summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStelios Fragkakis <52996999+stelfrag@users.noreply.github.com>2023-12-22 00:40:03 +0200
committerGitHub <noreply@github.com>2023-12-22 00:40:03 +0200
commitf662bf681c3a2c9b6ac6edd122e1a2c140b1074d (patch)
treebb9b12d7a602ec6e31a638c35f620ac52d34d566
parent51129c88c611feec313f536161cdb7e971de7851 (diff)
Fix overrun in crc32set (#16654)
-rw-r--r--database/engine/rrdenginelib.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/database/engine/rrdenginelib.h b/database/engine/rrdenginelib.h
index e0fca1abf8..a0febd4f4c 100644
--- a/database/engine/rrdenginelib.h
+++ b/database/engine/rrdenginelib.h
@@ -74,7 +74,8 @@ static inline int crc32cmp(void *crcp, uLong crc)
static inline void crc32set(void *crcp, uLong crc)
{
- memcpy(crcp, &crc, sizeof(crc));
+ uint32_t store_crc = (uint32_t) crc;
+ memcpy(crcp, &store_crc, sizeof(store_crc));
}
int check_file_properties(uv_file file, uint64_t *file_size, size_t min_size);