mirror of
https://github.com/clusterio/clusterio.git
synced 2026-11-14 07:24:52 +09:00
Remove the close listener when a rejected upload ends
A connection kept open for more requests got one more close listener for every rejected upload that finished within the grace period.
This commit is contained in:
1 file changed
+7
-2
@@ -366,8 +366,13 @@ function rejectUpload(req: Request, res: Response, status: number) {
|
||||
}
|
||||
const socket = req.socket;
|
||||
const timeout = setTimeout(() => socket.destroy(), rejectedUploadDrainMs);
|
||||
req.once("end", () => clearTimeout(timeout));
|
||||
socket.once("close", () => clearTimeout(timeout));
|
||||
const onClose = () => clearTimeout(timeout);
|
||||
socket.once("close", onClose);
|
||||
// The connection may be kept open for more requests, so don't leave a listener on it
|
||||
req.once("end", () => {
|
||||
clearTimeout(timeout);
|
||||
socket.off("close", onClose);
|
||||
});
|
||||
}
|
||||
|
||||
async function putStream(req: Request<{ id: string }>, res: Response) {
|
||||
|
||||
Reference in new issue
Block a user