Skip to content

Commit ce039c3

Browse files
bnoordhuisFishrock123
authored andcommitted
src: fix use-after-return in zlib bindings
Pointed out by Coverity. Introduced in commit 5b8e1da from September 2011 ("Initial pass at zlib bindings".) The asynchronous version of Write() used a pointer to a stack-allocated buffer on flush. A mitigating factor is that zlib does not dereference the pointer for zero-sized writes but it's still technically UB. PR-URL: #7374 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
1 parent 2816418 commit ce039c3

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

src/node_zlib.cc

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,7 @@ class ZCtx : public AsyncWrap {
149149

150150
if (args[1]->IsNull()) {
151151
// just a flush
152-
Bytef nada[1] = { 0 };
153-
in = nada;
152+
in = nullptr;
154153
in_len = 0;
155154
in_off = 0;
156155
} else {

0 commit comments

Comments
 (0)