projects
/
platform
/
upstream
/
lmdb.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c6d9080
)
ITS#8310 fix mdb_rebalance cursor fixup
author
Howard Chu
<hyc@openldap.org>
Fri, 13 Nov 2015 09:25:55 +0000
(09:25 +0000)
committer
Howard Chu
<hyc@openldap.org>
Fri, 13 Nov 2015 09:27:07 +0000
(09:27 +0000)
When collapsing root, must adjust entire cursor stack
libraries/liblmdb/mdb.c
patch
|
blob
|
history
diff --git
a/libraries/liblmdb/mdb.c
b/libraries/liblmdb/mdb.c
index
c7580a5
..
6c8f0ce
100644
(file)
--- a/
libraries/liblmdb/mdb.c
+++ b/
libraries/liblmdb/mdb.c
@@
-8091,9
+8091,9
@@
mdb_rebalance(MDB_cursor *mc)
m3 = &m2->mc_xcursor->mx_cursor;
else
m3 = m2;
- if (m3 == mc
|| m3->mc_snum < mc->mc_snum
) continue;
+ if (m3 == mc) continue;
if (m3->mc_pg[0] == mp) {
- for (i=0; i<m
3->mc_snum
; i++) {
+ for (i=0; i<m
c->mc_db->md_depth
; i++) {
m3->mc_pg[i] = m3->mc_pg[i+1];
m3->mc_ki[i] = m3->mc_ki[i+1];
}