summaryrefslogtreecommitdiff
path: root/libs/libmdbx/src/test/utils.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/libmdbx/src/test/utils.h')
-rw-r--r--libs/libmdbx/src/test/utils.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/libs/libmdbx/src/test/utils.h b/libs/libmdbx/src/test/utils.h
index 42d497e86e..7bf3abd305 100644
--- a/libs/libmdbx/src/test/utils.h
+++ b/libs/libmdbx/src/test/utils.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2017-2018 Leonid Yuriev <leo@yuriev.ru>
+ * Copyright 2017-2019 Leonid Yuriev <leo@yuriev.ru>
* and other libmdbx authors: please see AUTHORS file.
* All rights reserved.
*
@@ -288,6 +288,7 @@ struct simple_checksum {
void push(uint32_t data) {
value += data * UINT64_C(9386433910765580089) + 1;
value ^= value >> 41;
+ value *= UINT64_C(0xBD9CACC22C6E9571);
}
void push(uint64_t data) {
@@ -304,11 +305,15 @@ struct simple_checksum {
}
void push(const double &data) { push(&data, sizeof(double)); }
-
void push(const char *cstr) { push(cstr, strlen(cstr)); }
-
void push(const std::string &str) { push(str.data(), str.size()); }
+ void push(unsigned salt, const MDBX_val &val) {
+ push(val.iov_len);
+ push(salt);
+ push(val.iov_base, val.iov_len);
+ }
+
#if defined(_WIN32) || defined(_WIN64) || defined(_WINDOWS)
void push(const HANDLE &handle) { push(&handle, sizeof(handle)); }
#endif /* _WINDOWS */