Skip to content

Commit 518b890

Browse files
Trotttargos
authored andcommitted
Revert "src: let http2 streams end after session close"
This reverts commit dee882e. Moved the test that demonstrated what this commit was fixing to the `known_issues` folder. Fixes: #46234 PR-URL: #46721 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Debadree Chatterjee <debadree333@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
1 parent d5784c7 commit 518b890

File tree

2 files changed

+7
-13
lines changed

2 files changed

+7
-13
lines changed

src/node_http2.cc

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1124,17 +1124,6 @@ int Http2Session::OnStreamClose(nghttp2_session* handle,
11241124
if (!stream || stream->is_destroyed())
11251125
return 0;
11261126

1127-
// Don't close synchronously in case there's pending data to be written. This
1128-
// may happen when writing trailing headers.
1129-
if (code == NGHTTP2_NO_ERROR && nghttp2_session_want_write(handle) &&
1130-
env->can_call_into_js()) {
1131-
env->SetImmediate([handle, id, code, user_data](Environment* env) {
1132-
OnStreamClose(handle, id, code, user_data);
1133-
});
1134-
1135-
return 0;
1136-
}
1137-
11381127
stream->Close(code);
11391128

11401129
// It is possible for the stream close to occur before the stream is

test/parallel/test-http2-trailers-after-session-close.js renamed to test/known_issues/test-http2-trailers-after-session-close.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
'use strict';
22

3+
// Fixes: https://github.com/nodejs/node/issues/42713
34
const common = require('../common');
4-
if (!common.hasCrypto)
5+
if (!common.hasCrypto) {
6+
// Remove require('assert').fail when issue is fixed and test
7+
// is moved out of the known_issues directory.
8+
require('assert').fail('missing crypto');
59
common.skip('missing crypto');
10+
}
611
const assert = require('assert');
712
const http2 = require('http2');
813

@@ -31,7 +36,7 @@ server.listen(0, common.mustCall(() => {
3136
client.socket.on('close', common.mustCall());
3237
const req = client.request({
3338
[HTTP2_HEADER_PATH]: '/',
34-
[HTTP2_HEADER_METHOD]: 'POST'
39+
[HTTP2_HEADER_METHOD]: 'POST',
3540
});
3641
req.end();
3742
req.on('response', common.mustCall());

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy