diff --git a/packages/http-client-csharp/emitter/src/emitter.ts b/packages/http-client-csharp/emitter/src/emitter.ts index 159fdf033f..e3e44d5d38 100644 --- a/packages/http-client-csharp/emitter/src/emitter.ts +++ b/packages/http-client-csharp/emitter/src/emitter.ts @@ -139,7 +139,7 @@ export async function $onEmit(context: EmitContext) { const existingProjectOption = options["existing-project-folder"] ? `--existing-project-folder ${options["existing-project-folder"]}` : ""; - const debugFlag = (options.debug ?? false) ? " --debug" : ""; + const debugFlag = (options.debug ?? false) ? "--debug" : ""; const emitterPath = options["emitter-extension-path"] ?? import.meta.url; const projectRoot = findProjectRoot(dirname(fileURLToPath(emitterPath))); @@ -147,7 +147,7 @@ export async function $onEmit(context: EmitContext) { projectRoot + "/dist/generator/Microsoft.Generator.CSharp.dll" ); - const command = `dotnet --roll-forward Major ${generatorPath} ${outputFolder} -p ${options["plugin-name"]} ${newProjectOption} ${existingProjectOption}${debugFlag}`; + const command = `dotnet --roll-forward Major ${generatorPath} ${outputFolder} -p ${options["plugin-name"]}${constructCommandArg(newProjectOption)}${constructCommandArg(existingProjectOption)}${constructCommandArg(debugFlag)}`; Logger.getInstance().info(command); const result = await execAsync( @@ -180,6 +180,10 @@ export async function $onEmit(context: EmitContext) { } } +function constructCommandArg(arg: string): string { + return arg !== "" ? ` ${arg}` : ""; +} + async function execAsync( command: string, args: string[] = [],