Skip to content

Commit 1151bc2

Browse files
committed
fixuP
1 parent e256132 commit 1151bc2

File tree

1 file changed

+8
-10
lines changed

1 file changed

+8
-10
lines changed

lib/internal/streams/writable.js

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -734,17 +734,10 @@ function finishMaybe(stream, state, sync) {
734734
if (needFinish(state)) {
735735
prefinish(stream, state);
736736
if (state.pendingcb === 0) {
737+
state.pendingcb++;
737738
if (sync) {
738-
state.pendingcb++;
739-
process.nextTick((stream, state) => {
740-
if (needFinish(state)) {
741-
finish(stream, state);
742-
} else {
743-
state.pendingcb--;
744-
}
745-
}, stream, state);
746-
} else if (needFinish(state)) {
747-
state.pendingcb++;
739+
process.nextTick(finish, stream, state);
740+
} else {
748741
finish(stream, state);
749742
}
750743
}
@@ -753,6 +746,11 @@ function finishMaybe(stream, state, sync) {
753746

754747
function finish(stream, state) {
755748
state.pendingcb--;
749+
750+
if (!needFinish(state)) {
751+
return;
752+
}
753+
756754
state.finished = true;
757755

758756
const onfinishCallbacks = state[kOnFinished].splice(0);

0 commit comments

Comments
 (0)