diff options
author | ticktock35 <ticktock35@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358> | 2008-12-15 00:12:11 (EST) |
---|---|---|
committer | ticktock35 <ticktock35@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358> | 2008-12-15 00:12:11 (EST) |
commit | 163ff95e8dd49c4b51f8bca4d35617ae1a1fdb24 (patch) | |
tree | e29da27360b2a859ab25d368df5a0a9fdbc5a65f /libbb | |
parent | 5aa48e99d2a76525de7632327eda7e3f13138639 (diff) |
opkg: fix some initialisation and double free issues in libbb
git-svn-id: http://opkg.googlecode.com/svn/trunk@85 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/unarchive.c | 2 | ||||
-rw-r--r-- | libbb/unzip.c | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/libbb/unarchive.c b/libbb/unarchive.c index 2457824..5fc5725 100644 --- a/libbb/unarchive.c +++ b/libbb/unarchive.c @@ -715,7 +715,7 @@ char *deb_extract(const char *package_filename, FILE *out_stream, char *output_buffer = NULL; char *ared_file = NULL; char ar_magic[8]; - int gunzip_pid; + int gunzip_pid = 0; if (filename != NULL) { file_list = xmalloc(sizeof(char *) * 2); diff --git a/libbb/unzip.c b/libbb/unzip.c index 3826316..fb2429b 100644 --- a/libbb/unzip.c +++ b/libbb/unzip.c @@ -71,7 +71,7 @@ static FILE *in_file, *out_file; /* these are freed by gz_close */ static unsigned char *window; -static unsigned long *crc_table; +static unsigned long *crc_table = NULL; static unsigned long crc; /* shift register contents */ @@ -1020,6 +1020,9 @@ extern int unzip(FILE *l_in_file, FILE *l_out_file) free(window); free(crc_table); + window = NULL; + crc_table = NULL; + return exit_code; } |