File tree Expand file tree Collapse file tree 2 files changed +29
-5
lines changed Expand file tree Collapse file tree 2 files changed +29
-5
lines changed Original file line number Diff line number Diff line change @@ -291,7 +291,7 @@ function constructNT(stream) {
291291 } else if ( err ) {
292292 errorOrDestroy ( stream , err , true ) ;
293293 } else {
294- process . nextTick ( emitConstructNT , stream ) ;
294+ stream . emit ( kConstruct ) ;
295295 }
296296 }
297297
@@ -304,10 +304,6 @@ function constructNT(stream) {
304304 }
305305}
306306
307- function emitConstructNT ( stream ) {
308- stream . emit ( kConstruct ) ;
309- }
310-
311307function isRequest ( stream ) {
312308 return stream ?. setHeader && typeof stream . abort === 'function' ;
313309}
Original file line number Diff line number Diff line change 1+ 'use strict' ;
2+
3+ const common = require ( '../common' ) ;
4+ const tmpdir = require ( '../common/tmpdir' ) ;
5+ const { strictEqual } = require ( 'assert' ) ;
6+ const fs = require ( 'fs' ) ;
7+
8+ // Regression test for https://github.com/nodejs/node/issues/51993
9+
10+ tmpdir . refresh ( ) ;
11+
12+ const file = tmpdir . resolve ( 'test-fs-writestream-open-write.txt' ) ;
13+
14+ const w = fs . createWriteStream ( file ) ;
15+
16+ w . on ( 'open' , common . mustCall ( ( ) => {
17+ w . write ( 'hello' ) ;
18+
19+ process . nextTick ( ( ) => {
20+ w . write ( 'world' ) ;
21+ w . end ( ) ;
22+ } ) ;
23+ } ) ) ;
24+
25+ w . on ( 'close' , common . mustCall ( ( ) => {
26+ strictEqual ( fs . readFileSync ( file , 'utf8' ) , 'helloworld' ) ;
27+ fs . unlinkSync ( file ) ;
28+ } ) ) ;
You can’t perform that action at this time.
0 commit comments