mirror of
https://github.com/oven-sh/bun
synced 2026-02-09 18:38:55 +00:00
pause/resume + deprecated write fix
This commit is contained in:
@@ -2112,15 +2112,22 @@ ServerResponse.prototype = ServerResponsePrototype;
|
||||
$setPrototypeDirect.$call(ServerResponse, Stream);
|
||||
|
||||
const ServerResponse_writeDeprecated = function _write(chunk, encoding, callback) {
|
||||
if ($isCallable(encoding)) {
|
||||
callback = encoding;
|
||||
encoding = undefined;
|
||||
}
|
||||
if (!$isCallable(callback)) {
|
||||
callback = undefined;
|
||||
}
|
||||
if (this[firstWriteSymbol] === undefined && !this.headersSent) {
|
||||
this[firstWriteSymbol] = chunk;
|
||||
callback();
|
||||
if (callback) callback();
|
||||
return;
|
||||
}
|
||||
|
||||
ensureReadableStreamController.$call(this, controller => {
|
||||
controller.write(chunk);
|
||||
callback();
|
||||
if (callback) callback();
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
@@ -35,10 +35,8 @@ for (let expectedServer of [
|
||||
|
||||
test(`HTTP pause and resume (${expectedServer.length})`, async () => {
|
||||
const server = http.createServer((req, res) => {
|
||||
console.error("pause server request");
|
||||
req.pause();
|
||||
setTimeout(() => {
|
||||
console.error("resume server request");
|
||||
req.resume();
|
||||
req.setEncoding("utf8");
|
||||
req.on("data", chunk => {
|
||||
@@ -63,16 +61,13 @@ for (let expectedServer of [
|
||||
port: server.address().port,
|
||||
},
|
||||
res => {
|
||||
console.error("pause client response");
|
||||
res.pause();
|
||||
setTimeout(() => {
|
||||
console.error("resume client response");
|
||||
res.resume();
|
||||
res.on("data", chunk => {
|
||||
resultClient += chunk;
|
||||
});
|
||||
res.on("end", () => {
|
||||
console.error(resultClient);
|
||||
server.close();
|
||||
resolve();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user