free coniditionally, just to make it play nice with dmalloc which is incompatable with standard free()
diff --git a/libbb/unzip.c b/libbb/unzip.c
index b85eb99..23bf6c7 100644
--- a/libbb/unzip.c
+++ b/libbb/unzip.c
@@ -1024,6 +1024,10 @@
 	if (waitpid(gunzip_pid, NULL, 0) == -1) {
 		printf("Couldnt wait ?");
 	}
-	free(window);
-	free(crc_table);
+	if (window) {
+		free(window);
+	}
+	if (crc_table) {
+		free(crc_table);
+	}
 }