aboutsummaryrefslogtreecommitdiff
path: root/external/db_drivers/liblmdb/mdb.c
diff options
context:
space:
mode:
Diffstat (limited to 'external/db_drivers/liblmdb/mdb.c')
-rw-r--r--external/db_drivers/liblmdb/mdb.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/external/db_drivers/liblmdb/mdb.c b/external/db_drivers/liblmdb/mdb.c
index ba1315401..96c741f66 100644
--- a/external/db_drivers/liblmdb/mdb.c
+++ b/external/db_drivers/liblmdb/mdb.c
@@ -3461,9 +3461,9 @@ mdb_freelist_save(MDB_txn *txn)
} else {
x = mdb_mid2l_search(dl, mp->mp_pgno);
mdb_tassert(txn, dl[x].mid == mp->mp_pgno);
+ mdb_dpage_free(env, mp);
}
dl[x].mptr = NULL;
- mdb_dpage_free(env, mp);
}
{
/* squash freed slots out of the dirty list */
@@ -7867,7 +7867,7 @@ put_sub:
xdata.mv_size = 0;
xdata.mv_data = "";
leaf = NODEPTR(mc->mc_pg[mc->mc_top], mc->mc_ki[mc->mc_top]);
- if (flags == MDB_CURRENT) {
+ if ((flags & (MDB_CURRENT|MDB_APPENDDUP)) == MDB_CURRENT) {
xflags = MDB_CURRENT|MDB_NOSPILL;
} else {
mdb_xcursor_init1(mc, leaf);