Files
electron/script/start.js
Ruben R 00e01e0e82 fix: remove killed check to allow multiple signals (#40667)
* fix: remove `killed` check to allow multiple signals

* fix: signal forwarding
2025-10-23 15:20:04 -04:00

24 lines
567 B
JavaScript

const cp = require('node:child_process');
const utils = require('./lib/utils');
const electronPath = utils.getAbsoluteElectronExec();
const child = cp.spawn(electronPath, process.argv.slice(2), { stdio: 'inherit' });
let childClosed = false;
child.on('close', (code) => {
childClosed = true;
process.exit(code);
});
const handleTerminationSignal = (signal) =>
process.on(signal, () => {
if (!childClosed) {
child.kill(signal);
}
});
handleTerminationSignal('SIGINT');
handleTerminationSignal('SIGTERM');
handleTerminationSignal('SIGUSR2');