Comparing version 4.28.0 to 4.28.1
'use strict' | ||
const VERSION = '4.28.0' | ||
const VERSION = '4.28.1' | ||
@@ -5,0 +5,0 @@ const Avvio = require('avvio') |
@@ -223,2 +223,3 @@ 'use strict' | ||
server.removeListener('error', wrap) | ||
server.removeListener('listening', wrap) | ||
if (!err) { | ||
@@ -244,3 +245,4 @@ const address = logServerAddress.call(this, server, listenOptions.listenTextResolver || defaultResolveServerListeningText) | ||
if (!this[kState].closing) { | ||
server.listen(listenOptions, wrap) | ||
server.once('listening', wrap) | ||
server.listen(listenOptions) | ||
this[kState].listening = true | ||
@@ -260,4 +262,10 @@ } | ||
let errEventHandler | ||
let listeningEventHandler | ||
function cleanup () { | ||
server.removeListener('error', errEventHandler) | ||
server.removeListener('listening', listeningEventHandler) | ||
} | ||
const errEvent = new Promise((resolve, reject) => { | ||
errEventHandler = (err) => { | ||
cleanup() | ||
this[kState].listening = false | ||
@@ -268,14 +276,16 @@ reject(err) | ||
}) | ||
const listen = new Promise((resolve, reject) => { | ||
server.listen(listenOptions, () => { | ||
server.removeListener('error', errEventHandler) | ||
const listeningEvent = new Promise((resolve, reject) => { | ||
listeningEventHandler = () => { | ||
cleanup() | ||
this[kState].listening = true | ||
resolve(logServerAddress.call(this, server, listenOptions.listenTextResolver || defaultResolveServerListeningText)) | ||
}) | ||
// we set it afterwards because listen can throw | ||
this[kState].listening = true | ||
} | ||
server.once('listening', listeningEventHandler) | ||
}) | ||
server.listen(listenOptions) | ||
return Promise.race([ | ||
errEvent, // e.g invalid port range error is always emitted before the server listening | ||
listen | ||
listeningEvent | ||
]) | ||
@@ -282,0 +292,0 @@ }) |
{ | ||
"name": "fastify", | ||
"version": "4.28.0", | ||
"version": "4.28.1", | ||
"description": "Fast and low overhead web framework, for Node.js", | ||
@@ -5,0 +5,0 @@ "main": "fastify.js", |
@@ -1,2 +0,2 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
'use strict' | ||
Object.defineProperty(exports, '__esModule', { value: true }) |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
2443192
335
58731