Browse Source

ungz: handle bad return from gzip

K. Lange 1 year ago
parent
commit
e05b89b745
3 changed files with 3 additions and 1 deletions
  1. 1 0
      .gitignore
  2. 1 1
      Makefile
  3. 1 0
      util/ungz.c

+ 1 - 0
.gitignore

@@ -55,6 +55,7 @@
 # zlib
 /base/usr/include/zconf.h
 /base/usr/include/zlib.h
+/util/ungz
 
 # binutils
 /base/usr/i686-pc-toaru

+ 1 - 1
Makefile

@@ -385,5 +385,5 @@ ext-freetype: base/lib/libtoaru_ext_freetype_fonts.so
 ext-cairo: base/lib/libtoaru_ext_cairo_renderer.so
 
 # Other extra stuff
-fatbase/extra/ungz: util/ungz.c
+util/ungz: util/ungz.c
 	$(CC) -o $@ $< -lz

+ 1 - 0
util/ungz.c

@@ -42,6 +42,7 @@ int main(int argc, char **argv) {
 	while (!gzeof(src)) {
 		char buf[1024];
 		int r = gzread(src, buf, 1024);
+		if (r < 0) return 1;
 		fwrite(buf, r, 1, dest);
 	}