diff options
author | Andrzej Hunt <andrzej@ahunt.org> | 2021-06-04 18:25:19 +0200 |
---|---|---|
committer | Mark Adler <madler@alumni.caltech.edu> | 2023-08-12 13:15:21 -0700 |
commit | 981ee7570ad98a3cf1ae74d737e2ee619ed79171 (patch) | |
tree | f21996f3cd7fefdecd20b7166b66589068c182fe | |
parent | 1411ccafc0f50997b56135c3ee542fdfe9d7f34c (diff) | |
download | zlib-981ee7570ad98a3cf1ae74d737e2ee619ed79171.tar.gz zlib-981ee7570ad98a3cf1ae74d737e2ee619ed79171.tar.bz2 zlib-981ee7570ad98a3cf1ae74d737e2ee619ed79171.zip |
Suppress MSAN detections in deflate's slide_hash().
slide_hash() knowingly reads potentially uninitialized memory, see
comment lower down about prev[n] potentially being garbage. In
this case, the result is never used.
-rw-r--r-- | deflate.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -179,6 +179,11 @@ local const config configuration_table[10] = { | |||
179 | * bit values at the expense of memory usage). We slide even when level == 0 to | 179 | * bit values at the expense of memory usage). We slide even when level == 0 to |
180 | * keep the hash table consistent if we switch back to level > 0 later. | 180 | * keep the hash table consistent if we switch back to level > 0 later. |
181 | */ | 181 | */ |
182 | #if defined(__has_feature) | ||
183 | # if __has_feature(memory_sanitizer) | ||
184 | __attribute__((no_sanitize("memory"))) | ||
185 | # endif | ||
186 | #endif | ||
182 | local void slide_hash(deflate_state *s) { | 187 | local void slide_hash(deflate_state *s) { |
183 | unsigned n, m; | 188 | unsigned n, m; |
184 | Posf *p; | 189 | Posf *p; |