]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
ZSTD_decompressFrame(): pass up error code from ZSTD_decodeFrameHeader()
authorEric Biggers <ebiggers3@gmail.com>
Tue, 26 Jul 2016 17:42:19 +0000 (10:42 -0700)
committerEric Biggers <ebiggers3@gmail.com>
Tue, 26 Jul 2016 20:22:27 +0000 (13:22 -0700)
lib/decompress/zstd_decompress.c

index cd55aa8a53a973d80560f2b8b097e496e4390786..a34a36d1c455d85641b95f09408bb84cc53cc592 100644 (file)
@@ -860,9 +860,11 @@ static size_t ZSTD_decompressFrame(ZSTD_DCtx* dctx,
 
     /* Frame Header */
     {   size_t const frameHeaderSize = ZSTD_frameHeaderSize(src, ZSTD_frameHeaderSize_min);
+        size_t result;
         if (ZSTD_isError(frameHeaderSize)) return frameHeaderSize;
         if (srcSize < frameHeaderSize+ZSTD_blockHeaderSize) return ERROR(srcSize_wrong);
-        if (ZSTD_decodeFrameHeader(dctx, src, frameHeaderSize)) return ERROR(corruption_detected);
+        result = ZSTD_decodeFrameHeader(dctx, src, frameHeaderSize);
+        if (ZSTD_isError(result)) return result;
         ip += frameHeaderSize; remainingSize -= frameHeaderSize;
     }