From 4272e7de4f2f068b99cc6e32dd4ba86beb4d7266 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Sun, 18 Sep 2011 18:13:23 -0700 Subject: [PATCH] Make sure 2 subpages fit in one real page --- libraries/libmdb/mdb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/libmdb/mdb.c b/libraries/libmdb/mdb.c index 6f279e3..117a891 100644 --- a/libraries/libmdb/mdb.c +++ b/libraries/libmdb/mdb.c @@ -3695,7 +3695,8 @@ top: offset = NODESIZE + sizeof(indx_t) + data->mv_size; } offset += offset & 1; - if (NODEDSZ(leaf) + offset >= mc->mc_txn->mt_env->me_psize / MDB_MINKEYS) { + if (NODESIZE + NODEKSZ(leaf) + NODEDSZ(leaf) + offset >= + (mc->mc_txn->mt_env->me_psize - PAGEHDRSZ) / MDB_MINKEYS) { /* yes, convert it */ dummy.md_flags = 0; if (mc->mc_db->md_flags & MDB_DUPFIXED) {