aboutsummaryrefslogtreecommitdiff
path: root/files/unit_test/unit_test.h
diff options
context:
space:
mode:
Diffstat (limited to 'files/unit_test/unit_test.h')
-rw-r--r--files/unit_test/unit_test.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/files/unit_test/unit_test.h b/files/unit_test/unit_test.h
index 87907fa1..0a8df4d2 100644
--- a/files/unit_test/unit_test.h
+++ b/files/unit_test/unit_test.h
@@ -11,7 +11,7 @@
#ifndef UNIT_TEST_UNIT_TEST_H_ // NOLINT
#define UNIT_TEST_UNIT_TEST_H_
-#ifdef WIN32
+#ifdef _WIN32
#include <windows.h>
#else
#include <sys/resource.h>
@@ -111,10 +111,13 @@ inline int fastrand() {
return static_cast<int>((fastrand_seed >> 16) & 0xffff);
}
+// ubsan fails if dst is unaligned unless we use uint8
static inline void MemRandomize(uint8_t* dst, int64_t len) {
int64_t i;
for (i = 0; i < len - 1; i += 2) {
- *reinterpret_cast<uint16_t*>(dst) = fastrand();
+ int r = fastrand();
+ dst[0] = static_cast<uint8_t>(r);
+ dst[1] = static_cast<uint8_t>(r >> 8);
dst += 2;
}
for (; i < len; ++i) {