summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Štetiar <ynezz@true.cz>2020-12-08 18:13:03 +0100
committerPetr Štetiar <ynezz@true.cz>2020-12-11 11:17:22 +0100
commit32ff717ed316e2d29563dcccfb272144dee9973c (patch)
tree245b38c6588694bfd69776bca9abed8ddb8e3878
parent86a2ac6ac46ffb3f71e84debd03f7f16add148e5 (diff)
downloaduclient-32ff717ed316e2d29563dcccfb272144dee9973c.tar.gz
uclient-http: fix extra compiler warnings on mips_24kc and cortex-a9+neon
Fixes following warnings as reported on 32-bit platforms toolchain-mips_24kc_gcc-8.4.0_musl and toolchain-arm_cortex-a9+neon_gcc-8.4.0_musl_eabi: uclient-http.c:1111:10: error: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Werror=sign-compare] if (len > data_end - data) ^ uclient-http.c:1115:11: error: comparison of integer expressions of different signedness: 'unsigned int' and 'long int' [-Werror=sign-compare] if (len > uh->read_chunked) ^ uclient-http.c:1120:11: error: comparison of integer expressions of different signedness: 'unsigned int' and 'long int' [-Werror=sign-compare] if (len > uh->content_length) ^ References: https://gitlab.com/ynezz/openwrt-uclient/-/pipelines/226912126 Signed-off-by: Petr Štetiar <ynezz@true.cz>
-rw-r--r--uclient-http.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/uclient-http.c b/uclient-http.c
index 7eb4692..349e69c 100644
--- a/uclient-http.c
+++ b/uclient-http.c
@@ -1108,16 +1108,17 @@ uclient_http_read(struct uclient *cl, char *buf, unsigned int len)
}
}
- if (len > data_end - data)
- len = data_end - data;
+ unsigned int diff = data_end - data;
+ if (len > diff)
+ len = diff;
if (uh->read_chunked >= 0) {
- if (len > uh->read_chunked)
+ if (len > (unsigned long) uh->read_chunked)
len = uh->read_chunked;
uh->read_chunked -= len;
} else if (uh->content_length >= 0) {
- if (len > uh->content_length)
+ if (len > (unsigned long) uh->content_length)
len = uh->content_length;
uh->content_length -= len;