[PATCH uclient 08/12] uclient-http: fix extra compiler warnings on mips_24kc and cortex-a9+neon
Petr Štetiar
ynezz at true.cz
Thu Dec 10 10:47:55 EST 2020
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 at true.cz>
---
uclient-http.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/uclient-http.c b/uclient-http.c
index 7eb469221d7f..349e69cdd4ae 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;
More information about the openwrt-devel
mailing list