From d6d3fdf2c6b002ead21d93a6c0cfd845da6304e2 Mon Sep 17 00:00:00 2001 From: fumiama Date: Thu, 28 Oct 2021 23:13:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=86=85=E5=AD=98=E6=B3=84?= =?UTF-8?q?=E6=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- base16384.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/base16384.c b/base16384.c index 2472985..befdd66 100644 --- a/base16384.c +++ b/base16384.c @@ -15,13 +15,13 @@ void encode_file(const char* input, const char* output) { int cnt = 0; fputc(0xFE, fpo); fputc(0xFF, fpo); - fflush(fpo); while((cnt = fread(bufi, sizeof(uint8_t), B14BUFSIZ/7*7, fp))) { LENDAT* ld = encode(bufi, cnt); if(fwrite(ld->data, ld->len, 1, fpo) <= 0) { puts("Write file error!"); exit(EXIT_FAILURE); } + free(ld->data); free(ld); } free(bufi); @@ -32,16 +32,10 @@ void encode_file(const char* input, const char* output) { } else puts("Open input file error!"); } -int rm_head(FILE* fp) { +void rm_head(FILE* fp) { int ch = fgetc(fp); - if(ch == 0xFE) { - fgetc(fp); - return 1; - } - else { - rewind(fp); - return 0; - } + if(ch == 0xFE) fgetc(fp); + else rewind(fp); } static int is_next_end(FILE* fp) { @@ -75,6 +69,7 @@ void decode_file(const char* input, const char* output) { puts("Write file error!"); exit(EXIT_FAILURE); } + free(ld->data); free(ld); } free(bufi);