diff options
author | Anna Henningsen <anna@addaleax.net> | 2019-11-02 19:06:59 +0100 |
---|---|---|
committer | Anna Henningsen <anna@addaleax.net> | 2019-11-06 23:26:04 +0100 |
commit | 7e2a182d03c40faa567daebee5ce064675190bff (patch) | |
tree | 6f592972d6e0d188de01b04a9bb2b726cf7dae72 /src/node.cc | |
parent | 5bf43729a403b992cc90b5cdbbaaf505769d1107 (diff) | |
download | android-node-v8-7e2a182d03c40faa567daebee5ce064675190bff.tar.gz android-node-v8-7e2a182d03c40faa567daebee5ce064675190bff.tar.bz2 android-node-v8-7e2a182d03c40faa567daebee5ce064675190bff.zip |
src: make WaitForInspectorDisconnect an exit hook
Run inspector cleanup code on Environment teardown.
This is part of a series of changes to make embedding easier, by
requiring fewer internal methods to build a fully functioning
Node.js instance.
PR-URL: https://github.com/nodejs/node/pull/30229
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Shelley Vohr <codebytere@gmail.com>
Diffstat (limited to 'src/node.cc')
-rw-r--r-- | src/node.cc | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/src/node.cc b/src/node.cc index 18c4665b49..94c85cae74 100644 --- a/src/node.cc +++ b/src/node.cc @@ -163,31 +163,6 @@ struct V8Platform v8_platform; } // namespace per_process #ifdef __POSIX__ -static const unsigned kMaxSignal = 32; -#endif - -void WaitForInspectorDisconnect(Environment* env) { -#if HAVE_INSPECTOR - - if (env->inspector_agent()->IsActive()) { - // Restore signal dispositions, the app is done and is no longer - // capable of handling signals. -#if defined(__POSIX__) && !defined(NODE_SHARED_MODE) - struct sigaction act; - memset(&act, 0, sizeof(act)); - for (unsigned nr = 1; nr < kMaxSignal; nr += 1) { - if (nr == SIGKILL || nr == SIGSTOP || nr == SIGPROF) - continue; - act.sa_handler = (nr == SIGPIPE) ? SIG_IGN : SIG_DFL; - CHECK_EQ(0, sigaction(nr, &act, nullptr)); - } -#endif - env->inspector_agent()->WaitForDisconnect(); - } -#endif -} - -#ifdef __POSIX__ void SignalExit(int signo, siginfo_t* info, void* ucontext) { ResetStdio(); raise(signo); @@ -553,6 +528,7 @@ inline void PlatformInit() { CHECK_EQ(err, 0); #endif // HAVE_INSPECTOR + // TODO(addaleax): NODE_SHARED_MODE does not really make sense here. #ifndef NODE_SHARED_MODE // Restore signal dispositions, the parent process may have changed them. struct sigaction act; |