close
Skip to content

Run without debugging#14351

Open
bobbrow wants to merge 9 commits intomainfrom
bobbrow/runWithoutDebugging
Open

Run without debugging#14351
bobbrow wants to merge 9 commits intomainfrom
bobbrow/runWithoutDebugging

Conversation

@bobbrow
Copy link
Copy Markdown
Member

@bobbrow bobbrow commented Apr 3, 2026

Fixes: #1201

Supports both the Play button in the editor (run active file) and configurations specified in launch.json. macOS support needs to be tested - I don't currently have access to a machine.

Co-authored by GitHub Copilot

@github-project-automation github-project-automation bot moved this to Pull Request in cpptools Apr 3, 2026
@bobbrow bobbrow marked this pull request as ready for review April 4, 2026 00:05
@bobbrow bobbrow requested a review from a team as a code owner April 4, 2026 00:05
@bobbrow bobbrow added this to the 1.32 milestone Apr 4, 2026
@sean-mcmanus sean-mcmanus modified the milestones: 1.32, 1.32.0 Apr 4, 2026
});
}

private escapeQuotes(arg: string): string {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New functions that escape (only) quotes or add quotes, are a red flag for me. There are special rules for quoting that differ between shells/platforms.

I'm not sure if it's suitable for your purposes, but some of those rules appear to be encoded into buildShellCommandLine (which appears to be used for launching build tasks).

Taken at face value, a helper function named "quoteArg" is likely inherently problematic. Does it deal with existing quoted or escaped characters properly? Should it be named/commented to enforce the rule that it only be called on strings we generate that are known not to have escaping already (i.e. user input, or parsed from an existing command line). Does it deal with Windows weird rules for quote escaping?

Copy link
Copy Markdown
Member Author

@bobbrow bobbrow Apr 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Colengms
escapeQuotes will need to stay because of how the macOS launcher works (see line 133), but I can use buildShellCommandLine for building the command line instead of quoteArgs (line 127-128) if that is better. Since I don't have the "original" command, do I just pass empty string?

Looking at the one usage of buildShellCommandLine in the source code, it appears that originalCommand and command should be swapped...?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Pull Request

Development

Successfully merging this pull request may close these issues.

Support "Run without debugging"

4 participants