From 34123fed2fbe99b3a9a39ad5e0a141d55decb9f6 Mon Sep 17 00:00:00 2001 From: Pawel Kozlowski Date: Fri, 18 Apr 2014 18:45:06 +0200 Subject: [PATCH] fix(server): clear web server close timeout on clean close --- lib/server.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/lib/server.js b/lib/server.js index d4bd6b452..32a1af4e2 100644 --- a/lib/server.js +++ b/lib/server.js @@ -213,12 +213,15 @@ var start = function(injector, config, launcher, globalEmitter, preprocess, file }; globalEmitter.emitAsync('exit').then(function() { - // shutdown the server... - webServer.close(removeAllListeners); - - // ...but don't wait forever on webServer.close() because + // don't wait forever on webServer.close() because // pending client connections prevent it from closing. - setTimeout(removeAllListeners, webServerCloseTimeout); + var closeTimeout = setTimeout(removeAllListeners, webServerCloseTimeout); + + // shutdown the server... + webServer.close(function() { + clearTimeout(closeTimeout); + removeAllListeners(); + }); }); };