fix(bun-runner): treat signal-based exits for 'start' as success
Defense-in-depth for #1505. When the 'start' subcommand forks a daemon, the parent bun process may be killed by signal (exit > 128). If the close handler fires, treat this as success since the daemon started fine. Note: the primary fix is in hooks.json since the SIGKILL often kills the entire process group before this handler fires.
This commit is contained in:
@@ -171,6 +171,12 @@ child.on('error', (err) => {
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
child.on('close', (code) => {
|
||||
child.on('close', (code, signal) => {
|
||||
// Fix #1505: When the "start" subcommand forks a daemon, the parent bun
|
||||
// process may be killed by signal (e.g. SIGKILL, exit code 137). The daemon
|
||||
// is running fine — treat signal-based exits for "start" as success.
|
||||
if (signal || (code > 128 && args.includes('start'))) {
|
||||
process.exit(0);
|
||||
}
|
||||
process.exit(code || 0);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user