From c45349c6775d5f5c178d4c9141f885578307bf12 Mon Sep 17 00:00:00 2001 From: Dorian Niemiec Date: Fri, 29 Mar 2024 04:09:44 +0100 Subject: [PATCH] Update to RedBrick 2.6.1 --- index.js | 12 +++++++++++- mod.info | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/index.js b/index.js index 64b4948..de86840 100644 --- a/index.js +++ b/index.js @@ -297,9 +297,17 @@ Mod.prototype.callback = function (req, res, serverconsole, responseEnd, href, e res.write(data); interpreter.stdout.removeListener("data", dataHandler); interpreter.stdout.pipe(res, {end: false}); + dataHandler = function () {}; //Prevent event listener memory leaks } } }; + + res.prependListener("close", function() { + if(interpreter.stdout) interpreter.stdout.unpipe(res); //Prevent server crashes with write after the end + }); + + res.on("error", function() {}); //Suppress response stream errors + if (interpreter.stdout) { interpreter.stdout.on("data", dataHandler); interpreter.stderr.on("data", function (data) { @@ -321,7 +329,9 @@ Mod.prototype.callback = function (req, res, serverconsole, responseEnd, href, e serverconsole.errmessage("There were CGI application errors:"); serverconsole.errmessage(preparedStderr); } - res.end(); + interpreter.stdout.removeListener("data", dataHandler); + interpreter.stdout.unpipe(res); //Prevent server crashes with write after the end + if(!res.finished) res.end(); } }); } diff --git a/mod.info b/mod.info index 4d1db57..323ed2f 100755 --- a/mod.info +++ b/mod.info @@ -1,4 +1,4 @@ { "name": "RedBrick CGI engine for SVR.JS", - "version": "2.6.0" + "version": "2.6.1" }