diff --git a/libraries/libmdb/mdb.c b/libraries/libmdb/mdb.c
index 533ec7b4a8687b4306b8546368ecd2376fe63a47..2c54cbd2e587af27691c93bef7b04fd4f113d629 100644
--- a/libraries/libmdb/mdb.c
+++ b/libraries/libmdb/mdb.c
@@ -6128,9 +6128,10 @@ mdb_page_split(MDB_cursor *mc, MDB_val *newkey, MDB_val *newdata, pgno_t newpgno
 						psize += NODEDSZ(node);
 					psize += psize & 1;
 					if (psize > pmax) {
-						if (i >= newindx)
+						if (i >= newindx) {
 							split_indx = newindx;
-						else
+							newpos = 0;
+						} else
 							split_indx = i+1;
 						break;
 					}