mirror of
https://github.com/isar/libmdbx.git
synced 2025-01-06 18:54:14 +08:00
mdbx: fix assertion to avoid false-positive UB detection by CLANG/LLVM.
Assume this resolve https://github.com/erthink/libmdbx/issues/153 Change-Id: I02ceba1063a338b6dedf17629b51b3466358b0b8
This commit is contained in:
parent
afe93137fc
commit
d26ae6875b
@ -4701,7 +4701,8 @@ static __inline void mdbx_meta_update_end(const MDBX_env *env, MDBX_meta *meta,
|
|||||||
|
|
||||||
static __inline void mdbx_meta_set_txnid(const MDBX_env *env, MDBX_meta *meta,
|
static __inline void mdbx_meta_set_txnid(const MDBX_env *env, MDBX_meta *meta,
|
||||||
txnid_t txnid) {
|
txnid_t txnid) {
|
||||||
mdbx_assert(env, meta < METAPAGE(env, 0) || meta > METAPAGE_END(env));
|
mdbx_assert(env, !env->me_map || meta < METAPAGE(env, 0) ||
|
||||||
|
meta >= METAPAGE_END(env));
|
||||||
(void)env;
|
(void)env;
|
||||||
/* update inconsistent since this function used ONLY for filling meta-image
|
/* update inconsistent since this function used ONLY for filling meta-image
|
||||||
* for writing, but not the actual meta-page */
|
* for writing, but not the actual meta-page */
|
||||||
|
@ -410,8 +410,8 @@ void __hot maker::mk_continue(const serial_t serial, const essentials ¶ms,
|
|||||||
assert(out.value.iov_len <= params.maxlen);
|
assert(out.value.iov_len <= params.maxlen);
|
||||||
assert(out.value.iov_len >= length(serial));
|
assert(out.value.iov_len >= length(serial));
|
||||||
assert(out.value.iov_base >= out.bytes);
|
assert(out.value.iov_base >= out.bytes);
|
||||||
assert((uint8_t *)out.value.iov_base + out.value.iov_len <=
|
assert((char *)out.value.iov_base + out.value.iov_len <=
|
||||||
out.bytes + out.limit);
|
(char *)&out.bytes + out.limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
void log_pair(logging::loglevel level, const char *prefix, const buffer &key,
|
void log_pair(logging::loglevel level, const char *prefix, const buffer &key,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user