From e0d4eaf819f1b9b6cef16e7f74653ff0ced9b67c Mon Sep 17 00:00:00 2001 From: Leonid Yuriev Date: Thu, 21 Jan 2021 22:45:34 +0300 Subject: [PATCH] mdbx: minor refine `mdbx_txn_merge()`. --- src/core.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/core.c b/src/core.c index 6f2fdaa2..bfd6cb95 100644 --- a/src/core.c +++ b/src/core.c @@ -8554,9 +8554,10 @@ static __inline void mdbx_txn_merge(MDBX_txn *const parent, MDBX_txn *const txn, MDBX_dpl *const dst = mdbx_dpl_sort(parent->tw.dirtylist); while (MDBX_ENABLE_REFUND && dst->length && dst->items[dst->length].pgno >= parent->mt_next_pgno) { - MDBX_page *mp = dst->items[dst->length].ptr; - if (mp && (txn->mt_env->me_flags & MDBX_WRITEMAP) == 0) - mdbx_dpage_free(txn->mt_env, mp, IS_OVERFLOW(mp) ? mp->mp_pages : 1); + if (!(txn->mt_env->me_flags & MDBX_WRITEMAP)) { + MDBX_page *dp = dst->items[dst->length].ptr; + mdbx_dpage_free(txn->mt_env, dp, IS_OVERFLOW(dp) ? dp->mp_pages : 1); + } dst->length -= 1; } parent->tw.dirtyroom += dst->sorted - dst->length;