summaryrefslogtreecommitdiff
path: root/inflate.c
diff options
context:
space:
mode:
authorMark Adler <fork@madler.net>2022-10-06 16:33:42 -0700
committerMark Adler <fork@madler.net>2022-10-06 20:43:18 -0700
commita9e14e85415eb326000f352bce3fcb04a125406d (patch)
tree68f7359d6a55e5a925610d4138dbc24e72a3af64 /inflate.c
parent138c93cffb76f5c24e4ae6e81e6210428856f825 (diff)
downloadzlib-a9e14e85415eb326000f352bce3fcb04a125406d.tar.gz
Avoid undefined negation behavior if windowBits is INT_MIN.
Diffstat (limited to 'inflate.c')
-rw-r--r--inflate.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/inflate.c b/inflate.c
index 2a3c4fe..8acbef4 100644
--- a/inflate.c
+++ b/inflate.c
@@ -168,6 +168,8 @@ int windowBits;
/* extract wrap request from windowBits parameter */
if (windowBits < 0) {
+ if (windowBits < -15)
+ return Z_STREAM_ERROR;
wrap = 0;
windowBits = -windowBits;
}