summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ideviceinstaller.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ideviceinstaller.c b/src/ideviceinstaller.c
index 3780979..00a25de 100644
--- a/src/ideviceinstaller.c
+++ b/src/ideviceinstaller.c
@@ -163,7 +163,7 @@ static int zip_f_get_contents(struct zip *zf, const char *filename, int locate_f
163 } 163 }
164 164
165 *buffer = malloc(zs.size); 165 *buffer = malloc(zs.size);
166 if (zip_fread(zfile, *buffer, zs.size) != zs.size) { 166 if (zs.size > LLONG_MAX || zip_fread(zfile, *buffer, zs.size) != (zip_int64_t)zs.size) {
167 fprintf(stderr, "ERROR: zip_fread %" PRIu64 " bytes from '%s'\n", (uint64_t)zs.size, filename); 167 fprintf(stderr, "ERROR: zip_fread %" PRIu64 " bytes from '%s'\n", (uint64_t)zs.size, filename);
168 free(*buffer); 168 free(*buffer);
169 *buffer = NULL; 169 *buffer = NULL;