mirror of
https://github.com/Hizenberg469/Compression-Algorithm.git
synced 2026-04-20 02:12:26 +03:00
Corrected huff.c bug
This commit is contained in:
@@ -71,8 +71,9 @@ void CompressFile(FILE* input, BIT_FILE* output, int argc, char* argv[]) {
|
|||||||
print_model(nodes, codes);
|
print_model(nodes, codes);
|
||||||
|
|
||||||
compress_data(input, output, codes);
|
compress_data(input, output, codes);
|
||||||
|
free( (char *) counts );
|
||||||
|
free( (char *) nodes );
|
||||||
free((char*)codes);
|
free((char*)codes);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ExpandFile(BIT_FILE* input, FILE* output, int argc, char* argv[]) {
|
void ExpandFile(BIT_FILE* input, FILE* output, int argc, char* argv[]) {
|
||||||
@@ -211,7 +212,7 @@ void scale_counts(unsigned long* counts, NODE* nodes) {
|
|||||||
|
|
||||||
for (i = 0; i < 256; i++) {
|
for (i = 0; i < 256; i++) {
|
||||||
nodes[i].count = (unsigned int)(counts[i] / max_count);
|
nodes[i].count = (unsigned int)(counts[i] / max_count);
|
||||||
if (nodes[i].count = 0 && counts[i] != 0)
|
if (nodes[i].count == 0 && counts[i] != 0)
|
||||||
nodes[i].count = 1;
|
nodes[i].count = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -117,5 +117,5 @@ void print_ratios(char* input, char* output) {
|
|||||||
printf("Output bytes: %ld\n", output_size);
|
printf("Output bytes: %ld\n", output_size);
|
||||||
if (output_size == 0)
|
if (output_size == 0)
|
||||||
output_size = 1;
|
output_size = 1;
|
||||||
printf("Compression ratio: %d\n", ratio);
|
printf("Compression ratio: %d%%\n", ratio);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user