summaryrefslogtreecommitdiff
path: root/deps/npm/lib/utils/lifecycle.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/lib/utils/lifecycle.js')
-rw-r--r--deps/npm/lib/utils/lifecycle.js10
1 files changed, 10 insertions, 0 deletions
diff --git a/deps/npm/lib/utils/lifecycle.js b/deps/npm/lib/utils/lifecycle.js
index f48d5e2a3b..4ab5e0979a 100644
--- a/deps/npm/lib/utils/lifecycle.js
+++ b/deps/npm/lib/utils/lifecycle.js
@@ -282,6 +282,7 @@ function runCmd_ (cmd, pkg, env, wd, stage, unsafe, uid, gid, cb_) {
procError(er)
})
process.once('SIGTERM', procKill)
+ process.once('SIGINT', procInterupt)
function procError (er) {
if (er) {
@@ -302,11 +303,20 @@ function runCmd_ (cmd, pkg, env, wd, stage, unsafe, uid, gid, cb_) {
er.pkgname = pkg.name
}
process.removeListener('SIGTERM', procKill)
+ process.removeListener('SIGTERM', procInterupt)
+ process.removeListener('SIGINT', procKill)
return cb(er)
}
function procKill () {
proc.kill()
}
+ function procInterupt () {
+ proc.kill('SIGINT')
+ proc.on('exit', function () {
+ process.exit()
+ })
+ process.once('SIGINT', procKill)
+ }
}
function runHookLifecycle (pkg, env, wd, unsafe, cb) {