projects
/
oweals
/
busybox.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix a type promotion bug discivered and analyzed by Alan Modra
[oweals/busybox.git]
/
archival
/
libunarchive
/
unzip.c
diff --git
a/archival/libunarchive/unzip.c
b/archival/libunarchive/unzip.c
index 7de28930ae2f9828cf546355f3ed2fb362e371bc..40b8af427d2f3761226df63f03c2512c52e979cb 100644
(file)
--- a/
archival/libunarchive/unzip.c
+++ b/
archival/libunarchive/unzip.c
@@
-997,7
+997,7
@@
extern int unzip(FILE *l_in_file, FILE *l_out_file)
fread(buf, 1, 8, in_file);
/* Validate decompression - crc */
fread(buf, 1, 8, in_file);
/* Validate decompression - crc */
- if (((buf[0] | (buf[1] << 8)) |((buf[2] | (buf[3] << 8)) << 16)) != (crc ^ 0xffffffffL)) {
+ if ((
unsigned int)(
(buf[0] | (buf[1] << 8)) |((buf[2] | (buf[3] << 8)) << 16)) != (crc ^ 0xffffffffL)) {
error_msg("invalid compressed data--crc error");
}
/* Validate decompression - size */
error_msg("invalid compressed data--crc error");
}
/* Validate decompression - size */