瀏覽代碼

fix: build.mjs commands could not be executed correctly. (#7682)

* fix: Fix issue where commands could not be executed correctly when they contained spaces

* chore: oxfmt
Noah Lan 2 月之前
父節點
當前提交
885a0a9a00
共有 1 個文件被更改,包括 6 次插入3 次删除
  1. 6 3
      internal/node-utils/scripts/build.mjs

+ 6 - 3
internal/node-utils/scripts/build.mjs

@@ -1,8 +1,7 @@
 import { spawnSync } from 'node:child_process';
 
 const pnpmCommand =
-  process.env.npm_execpath &&
-  process.env.npm_execpath.endsWith('.cjs')
+  process.env.npm_execpath && process.env.npm_execpath.endsWith('.cjs')
     ? [process.execPath, process.env.npm_execpath]
     : ['pnpm'];
 
@@ -22,7 +21,11 @@ const steps = [
 
 for (const args of steps) {
   const [command, ...commandArgs] = pnpmCommand;
-  const result = spawnSync(command, [...commandArgs, ...args], {
+  let cmd = command;
+  if (cmd.includes(' ')) {
+    cmd = `"${command}"`;
+  }
+  const result = spawnSync(cmd, [...commandArgs, ...args], {
     shell: true,
     stdio: 'inherit',
   });