mirror of
https://github.com/coder/code-server.git
synced 2025-07-28 20:43:24 +08:00
Prevent process.exit()
This commit is contained in:
@ -250,13 +250,19 @@ const main = async(): Promise<boolean | void | void[]> => {
|
||||
return startCli() || new WrapperProcess().start();
|
||||
};
|
||||
|
||||
const exit = process.exit;
|
||||
process.exit = function (code?: number) {
|
||||
const err = new Error(`process.exit() was prevented: ${code || "unknown code"}.`);
|
||||
console.warn(err.stack);
|
||||
} as (code?: number) => never;
|
||||
|
||||
// It's possible that the pipe has closed (for example if you run code-server
|
||||
// --version | head -1). Assume that means we're done.
|
||||
if (!process.stdout.isTTY) {
|
||||
process.stdout.on("error", () => process.exit());
|
||||
process.stdout.on("error", () => exit());
|
||||
}
|
||||
|
||||
main().catch((error) => {
|
||||
logger.error(error.message);
|
||||
process.exit(typeof error.code === "number" ? error.code : 1);
|
||||
exit(typeof error.code === "number" ? error.code : 1);
|
||||
});
|
||||
|
Reference in New Issue
Block a user