Reduced buffer memory leaks and improved performace by using streams after header processing

This commit is contained in:
Dorian Niemiec 2024-02-16 02:08:28 +01:00
parent a94e619f16
commit a7aed50d70

View file

@ -224,7 +224,7 @@ Mod.prototype.callback = function (req, res, serverconsole, responseEnd, href, e
} }
}); });
var dataHandler = function (data) { var dataHandler = function (data) {
buffer += data.toString("latin1"); if (!cned) buffer += data.toString("latin1");
var m = null; var m = null;
if (!cned) m = buffer.match(/(?:\r\n\r\n|\n\r\n\r|\n\n|\r\r)/); if (!cned) m = buffer.match(/(?:\r\n\r\n|\n\r\n\r|\n\n|\r\r)/);
if (!cned && m) { if (!cned && m) {
@ -291,7 +291,11 @@ Mod.prototype.callback = function (req, res, serverconsole, responseEnd, href, e
return; return;
} }
} else { } else {
if (cned && !res.finished) res.write(data); if (cned && !res.finished) {
res.write(data);
interpreter.stdout.removeListener("data", dataHandler);
interpreter.stdout.pipe(res, {end: false});
}
} }
}; };
if (interpreter.stdout) { if (interpreter.stdout) {