From a7c14294ccfc26f48b5e4c511b7dc65b7e3020a9 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 2 Feb 2018 19:58:53 +0300 Subject: merge with libmdbx --- plugins/Dbx_mdbx/src/libmdbx/src/mdbx.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'plugins/Dbx_mdbx') diff --git a/plugins/Dbx_mdbx/src/libmdbx/src/mdbx.c b/plugins/Dbx_mdbx/src/libmdbx/src/mdbx.c index a8e0500326..b3ce3388d5 100644 --- a/plugins/Dbx_mdbx/src/libmdbx/src/mdbx.c +++ b/plugins/Dbx_mdbx/src/libmdbx/src/mdbx.c @@ -2966,7 +2966,6 @@ static int mdbx_txn_end(MDBX_txn *txn, unsigned mode) { env->me_last_reclaimed = 0; env->me_txn = NULL; - mode = 0; /* txn == env->me_txn0, do not free() it */ /* The writer mutex was locked in mdbx_txn_begin. */ mdbx_txn_unlock(env); @@ -2982,9 +2981,8 @@ static int mdbx_txn_end(MDBX_txn *txn, unsigned mode) { mdbx_pnl_free(pghead); } - mdbx_assert(env, txn->mt_owner == 0); - if (mode & MDBX_END_FREE) { - mdbx_ensure(env, txn != env->me_txn0); + mdbx_assert(env, txn == env->me_txn0 || txn->mt_owner == 0); + if ((mode & MDBX_END_FREE) != 0 && txn != env->me_txn0) { txn->mt_signature = 0; free(txn); } -- cgit v1.2.3