Mercurial > public > mercurial-scm > hg
diff contrib/python-zstandard/c-ext/compressor.c @ 30830:08fa3a76a080
zstd: prevent potential free() of uninitialized memory
This is a cherry pick of an upstream fix. The free() of uninitialed
memory could likely only occur if a malloc() inside zstd fails.
The patched functions aren't currently used by Mercurial. But I don't
like leaving footguns sitting around.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Tue, 17 Jan 2017 10:17:13 -0800 |
parents | b54a2984cdd4 |
children | c32454d69b85 |
line wrap: on
line diff
--- a/contrib/python-zstandard/c-ext/compressor.c Tue Jan 17 11:25:02 2017 -0800 +++ b/contrib/python-zstandard/c-ext/compressor.c Tue Jan 17 10:17:13 2017 -0800 @@ -258,6 +258,9 @@ return NULL; } + /* Prevent free on uninitialized memory in finally. */ + output.dst = NULL; + cstream = CStream_from_ZstdCompressor(self, sourceSize); if (!cstream) { res = NULL;