diff --git a/src/start.js b/src/start.js index 677230e235..99f3b662c5 100644 --- a/src/start.js +++ b/src/start.js @@ -147,6 +147,6 @@ async function shutdown(code) { } catch (err) { winston.error(err.stack); - return process.exit(code || 0); + process.exit(code || 0); } } diff --git a/src/webserver.js b/src/webserver.js index 15e33897bf..23ed24df68 100644 --- a/src/webserver.js +++ b/src/webserver.js @@ -69,11 +69,16 @@ server.on('connection', (conn) => { }); }); -exports.destroy = function (callback) { - server.close(callback); - for (const connection of Object.values(connections)) { - connection.destroy(); - } +exports.destroy = function () { + return new Promise((resolve, reject) => { + server.close((err) => { + if (err) reject(err); + else resolve(); + }); + for (const connection of Object.values(connections)) { + connection.destroy(); + } + }); }; exports.getConnectionCount = function () {