summaryrefslogtreecommitdiff
path: root/tools/lz/main.c
diff options
context:
space:
mode:
authorRangi <remy.oukaour+rangi42@gmail.com>2020-05-24 12:29:05 -0400
committerRangi <remy.oukaour+rangi42@gmail.com>2020-05-24 12:29:05 -0400
commit159cef004f86d134a551a3abfba2dee9020b16d0 (patch)
treeb80cf8f9cf6cbafad20cab82e54a32590d3d8eea /tools/lz/main.c
parentc1c671d84b8b36e421f73483977ee75f7b1f46ff (diff)
Update lzcomp
Diffstat (limited to 'tools/lz/main.c')
-rw-r--r--tools/lz/main.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/tools/lz/main.c b/tools/lz/main.c
index 428a027f0..62e6dc413 100644
--- a/tools/lz/main.c
+++ b/tools/lz/main.c
@@ -37,13 +37,16 @@ struct command * compress (const unsigned char * data, unsigned short * size, un
} else {
struct command * compressed_sequences[COMPRESSION_METHODS];
unsigned short lengths[COMPRESSION_METHODS];
- unsigned flags = compressor -> methods;
+ unsigned flags = 0;
for (current = 0; current < COMPRESSION_METHODS; current ++) {
lengths[current] = *size;
- if (!flags) flags = (++ compressor) -> methods;
- compressed_sequences[current] = compressor -> function(data, bitflipped, lengths + current, -- flags);
+ if (flags == compressor -> methods) {
+ flags = 0;
+ compressor ++;
+ }
+ compressed_sequences[current] = compressor -> function(data, bitflipped, lengths + current, flags ++);
}
- result = select_command_sequence(compressed_sequences, lengths, COMPRESSION_METHODS, size);
+ result = select_optimal_sequence(compressed_sequences, lengths, size);
for (current = 0; current < COMPRESSION_METHODS; current ++) free(compressed_sequences[current]);
}
free(bitflipped);