Fix getFreePort() (#627)

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
This commit is contained in:
Lauri Nevala authored and GitHub committed 2020-08-04 10:28:27 +03:00
1 parent c70564e962
commit d923053844
1 file changed
+3 -1
+3 -1
View File
@@ -6,7 +6,8 @@ import logger from "./logger"
export async function getFreePort(): Promise<number> { export async function getFreePort(): Promise<number> {
logger.debug("Lookup new free port.."); logger.debug("Lookup new free port..");
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
const server = net.createServer().unref().listen({ port: 0 }); const server = net.createServer()
server.unref()
server.on("listening", () => { server.on("listening", () => {
const port = (server.address() as AddressInfo).port const port = (server.address() as AddressInfo).port
server.close(() => resolve(port)); server.close(() => resolve(port));
@@ -16,5 +17,6 @@ export async function getFreePort(): Promise<number> {
logger.error(`Can't resolve new port: "${error}"`); logger.error(`Can't resolve new port: "${error}"`);
reject(error); reject(error);
}); });
server.listen({ host: "127.0.0.1", port: 0 })
}) })
} }