Remove dirty Field From LZ4_stream_t
This commit is contained in:
parent
d7399232a4
commit
9af86f0841
10
lib/lz4.c
10
lib/lz4.c
@ -758,15 +758,6 @@ LZ4_FORCE_INLINE void
|
||||
LZ4_prepareTable(LZ4_stream_t_internal* const cctx,
|
||||
const int inputSize,
|
||||
const tableType_t tableType) {
|
||||
/* If compression failed during the previous step, then the context
|
||||
* is marked as dirty, therefore, it has to be fully reset.
|
||||
*/
|
||||
if (cctx->dirty) {
|
||||
DEBUGLOG(5, "LZ4_prepareTable: Full reset for %p", cctx);
|
||||
MEM_INIT(cctx, 0, sizeof(LZ4_stream_t_internal));
|
||||
return;
|
||||
}
|
||||
|
||||
/* If the table hasn't been used, it's guaranteed to be zeroed out, and is
|
||||
* therefore safe to use no matter what mode we're in. Otherwise, we figure
|
||||
* out if it's safe to leave as is or whether it needs to be reset.
|
||||
@ -1506,7 +1497,6 @@ int LZ4_compress_fast_continue (LZ4_stream_t* LZ4_stream,
|
||||
|
||||
DEBUGLOG(5, "LZ4_compress_fast_continue (inputSize=%i)", inputSize);
|
||||
|
||||
if (streamPtr->dirty) { return 0; } /* Uninitialized structure detected */
|
||||
LZ4_renormDictT(streamPtr, inputSize); /* avoid index overflow */
|
||||
if (acceleration < 1) acceleration = ACCELERATION_DEFAULT;
|
||||
|
||||
|
@ -564,8 +564,7 @@ typedef struct LZ4_stream_t_internal LZ4_stream_t_internal;
|
||||
struct LZ4_stream_t_internal {
|
||||
uint32_t hashTable[LZ4_HASH_SIZE_U32];
|
||||
uint32_t currentOffset;
|
||||
uint16_t dirty;
|
||||
uint16_t tableType;
|
||||
uint32_t tableType;
|
||||
const uint8_t* dictionary;
|
||||
const LZ4_stream_t_internal* dictCtx;
|
||||
uint32_t dictSize;
|
||||
@ -584,8 +583,7 @@ typedef struct LZ4_stream_t_internal LZ4_stream_t_internal;
|
||||
struct LZ4_stream_t_internal {
|
||||
unsigned int hashTable[LZ4_HASH_SIZE_U32];
|
||||
unsigned int currentOffset;
|
||||
unsigned short dirty;
|
||||
unsigned short tableType;
|
||||
unsigned int tableType;
|
||||
const unsigned char* dictionary;
|
||||
const LZ4_stream_t_internal* dictCtx;
|
||||
unsigned int dictSize;
|
||||
|
@ -787,7 +787,6 @@ static int FUZ_test(U32 seed, U32 nbCycles, const U32 startCycle, const double c
|
||||
LZ4_attach_dictionary(&LZ4_stream, &LZ4dictBody);
|
||||
blockContinueCompressedSize = LZ4_compress_fast_continue(&LZ4_stream, block, compressedBuffer, blockSize, (int)compressedBufferSize, 1);
|
||||
FUZ_CHECKTEST(blockContinueCompressedSize==0, "LZ4_compress_fast_continue using extDictCtx failed");
|
||||
FUZ_CHECKTEST(LZ4_stream.internal_donotuse.dirty, "context should be good");
|
||||
|
||||
/* In the future, it might be desirable to let extDictCtx mode's
|
||||
* output diverge from the output generated by regular extDict mode.
|
||||
@ -812,7 +811,6 @@ static int FUZ_test(U32 seed, U32 nbCycles, const U32 startCycle, const double c
|
||||
FUZ_CHECKTEST(ret<=0, "LZ4_compress_fast_continue using extDictCtx should work : enough size available within output buffer");
|
||||
FUZ_CHECKTEST(ret != expectedSize, "LZ4_compress_fast_continue using extDictCtx produced different-sized output");
|
||||
FUZ_CHECKTEST(XXH32(compressedBuffer, (size_t)ret, 0) != expectedCrc, "LZ4_compress_fast_continue using extDictCtx produced different output");
|
||||
FUZ_CHECKTEST(LZ4_stream.internal_donotuse.dirty, "context should be good");
|
||||
|
||||
FUZ_DISPLAYTEST();
|
||||
LZ4_resetStream_fast(&LZ4_stream);
|
||||
@ -822,7 +820,6 @@ static int FUZ_test(U32 seed, U32 nbCycles, const U32 startCycle, const double c
|
||||
FUZ_CHECKTEST(ret<=0, "LZ4_compress_fast_continue using extDictCtx with re-used context should work : enough size available within output buffer");
|
||||
FUZ_CHECKTEST(ret != expectedSize, "LZ4_compress_fast_continue using extDictCtx produced different-sized output");
|
||||
FUZ_CHECKTEST(XXH32(compressedBuffer, (size_t)ret, 0) != expectedCrc, "LZ4_compress_fast_continue using extDictCtx produced different output");
|
||||
FUZ_CHECKTEST(LZ4_stream.internal_donotuse.dirty, "context should be good");
|
||||
}
|
||||
|
||||
/* Decompress with dictionary as external */
|
||||
@ -1115,7 +1112,6 @@ static void FUZ_unitTests(int compressionLevel)
|
||||
LZ4_initStream(&streamingState, sizeof(streamingState));
|
||||
result = LZ4_compress_fast_continue(&streamingState, testInput, testCompressed, testCompressedSize, testCompressedSize-1, 1);
|
||||
FUZ_CHECKTEST(result==0, "LZ4_compress_fast_continue() compression failed!");
|
||||
FUZ_CHECKTEST(streamingState.internal_donotuse.dirty, "context should be clean")
|
||||
|
||||
result = LZ4_decompress_safe(testCompressed, testVerify, result, testCompressedSize);
|
||||
FUZ_CHECKTEST(result!=(int)testCompressedSize, "LZ4_decompress_safe() decompression failed");
|
||||
|
Loading…
Reference in New Issue
Block a user