From 9788f97d68076acffc11da82a9c65f06cd661b15 Mon Sep 17 00:00:00 2001 From: Fabian Keil Date: Fri, 5 Feb 2021 13:27:13 +0100 Subject: [PATCH] decompress_iob(): Cast value to unsigned char before shifting Prevents a left-shift of a negative value which is undefined behavior. Reported by: Joshua Rogers (Opera) --- parsers.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parsers.c b/parsers.c index 35e2c330..f905c92a 100644 --- a/parsers.c +++ b/parsers.c @@ -609,7 +609,7 @@ jb_err decompress_iob(struct client_state *csp) */ int skip_bytes; skip_bytes = *cur++; - skip_bytes += *cur++ << 8; + skip_bytes += (unsigned char)*cur++ << 8; /* * The number of bytes to skip should be positive -- 2.39.2