diff --git a/src/cli/runtime/packaged-cli-interpreter.ts b/src/cli/runtime/packaged-cli-interpreter.ts index 44d211a04e1..a4fe92d8bc5 100644 --- a/src/cli/runtime/packaged-cli-interpreter.ts +++ b/src/cli/runtime/packaged-cli-interpreter.ts @@ -16,6 +16,13 @@ export function reenterPackagedElectron(): void { if (!packagedElectron) { return } + const execve = process.execve + if (!execve) { + throw new RuntimeClientError( + 'unsupported_runtime', + 'The installed Orca runtime is unavailable. Reinstall Orca and try again.' + ) + } try { accessSync(packagedElectron, constants.X_OK) accessSync(process.argv[1], constants.R_OK) @@ -25,7 +32,7 @@ export function reenterPackagedElectron(): void { 'The installed Orca app is unavailable. Reinstall Orca and try again.' ) } - process.execve(packagedElectron, [packagedElectron, ...process.argv.slice(1)], { + execve.call(process, packagedElectron, [packagedElectron, ...process.argv.slice(1)], { ...process.env, ELECTRON_RUN_AS_NODE: '1' })