From d5c59c5174a173c9b4f79e3bff0b1894db9493c2 Mon Sep 17 00:00:00 2001 From: Episkey Date: Mon, 26 Jan 2026 15:11:43 +0800 Subject: [PATCH] fix(gateway): close server in canBindToHost error handler Ensure testServer.close() is called in both success and error paths to prevent file descriptor leaks when bind fails. --- CHANGELOG.md | 1 + src/gateway/net.ts | 1 + 2 files changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9742150a3..1f6993076 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,6 +36,7 @@ Status: unreleased. ### Fixes - Web UI: improve WebChat image paste previews and allow image-only sends. (#1925) Thanks @smartprogrammer93. +- Gateway: fix server resource leak in canBindToHost error handler. ## 2026.1.24-3 diff --git a/src/gateway/net.ts b/src/gateway/net.ts index 608ec872f..a743140c9 100644 --- a/src/gateway/net.ts +++ b/src/gateway/net.ts @@ -140,6 +140,7 @@ export async function canBindToHost(host: string): Promise { return new Promise((resolve) => { const testServer = net.createServer(); testServer.once("error", () => { + testServer.close(); resolve(false); }); testServer.once("listening", () => {