diff options
author | Yann Collet <cyan@fb.com> | 2016-11-16 01:51:29 (GMT) |
---|---|---|
committer | Yann Collet <cyan@fb.com> | 2016-11-16 01:51:29 (GMT) |
commit | 7cecc7b089b1903563b3556eb8ed631ff326ede9 (patch) | |
tree | e3558eb5bba8492e0cd103576d50352cd8fb7673 /lib/lz4frame.c | |
parent | 00fa1b9c018cf7dc80a07a1192555469577c675c (diff) | |
download | lz4-7cecc7b089b1903563b3556eb8ed631ff326ede9.zip lz4-7cecc7b089b1903563b3556eb8ed631ff326ede9.tar.gz lz4-7cecc7b089b1903563b3556eb8ed631ff326ede9.tar.bz2 |
fixed a limit case scenario
Diffstat (limited to 'lib/lz4frame.c')
-rw-r--r-- | lib/lz4frame.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/lz4frame.c b/lib/lz4frame.c index c8e5bde..3c2b788 100644 --- a/lib/lz4frame.c +++ b/lib/lz4frame.c @@ -897,10 +897,11 @@ static size_t LZ4F_decodeHeader(LZ4F_dctx* dctxPtr, const void* src, size_t srcS FREEMEM(dctxPtr->tmpIn); dctxPtr->tmpIn = (BYTE*)ALLOCATOR(dctxPtr->maxBlockSize); if (dctxPtr->tmpIn == NULL) return err0r(LZ4F_ERROR_allocation_failed); - dctxPtr->maxBufferSize = bufferNeeded; FREEMEM(dctxPtr->tmpOutBuffer); + dctxPtr->maxBufferSize = 0; dctxPtr->tmpOutBuffer= (BYTE*)ALLOCATOR(bufferNeeded); if (dctxPtr->tmpOutBuffer== NULL) return err0r(LZ4F_ERROR_allocation_failed); + dctxPtr->maxBufferSize = bufferNeeded; } } dctxPtr->tmpInSize = 0; dctxPtr->tmpInTarget = 0; |