From: Hallvard Furuseth Date: Sun, 10 Sep 2017 22:00:14 +0000 (+0200) Subject: Tweak ITS#8722 fix: Use XCURSOR_REFRESH() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9488faae4c5d3e754bfafbc90652d2953b6cc7d;p=thirdparty%2Fopenldap.git Tweak ITS#8722 fix: Use XCURSOR_REFRESH() This checks XCURSOR_INITED() and fixes the mn_flags check. --- diff --git a/libraries/liblmdb/mdb.c b/libraries/liblmdb/mdb.c index 7f67bbb887..79e96e2bbd 100644 --- a/libraries/liblmdb/mdb.c +++ b/libraries/liblmdb/mdb.c @@ -8454,13 +8454,7 @@ mdb_cursor_del(MDB_cursor *mc, unsigned int flags) if (m2 == mc || m2->mc_snum < mc->mc_snum) continue; if (!(m2->mc_flags & C_INITIALIZED)) continue; if (m2->mc_pg[mc->mc_top] == mp) { - MDB_node *n2 = leaf; - if (m2->mc_ki[mc->mc_top] >= NUMKEYS(mp)) continue; - if (m2->mc_ki[mc->mc_top] != mc->mc_ki[mc->mc_top]) { - n2 = NODEPTR(mp, m2->mc_ki[mc->mc_top]); - if (n2->mn_flags & F_SUBDATA) continue; - } - m2->mc_xcursor->mx_cursor.mc_pg[0] = NODEDATA(n2); + XCURSOR_REFRESH(m2, mc->mc_top, mp); } } }