Skip to content

Commit 7d022e0

Browse files
committed
ITS#8300 simplify
1 parent 0db71b9 commit 7d022e0

File tree

1 file changed

+10
-18
lines changed

1 file changed

+10
-18
lines changed

libraries/liblmdb/mdb.c

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7596,47 +7596,39 @@ mdb_node_move(MDB_cursor *csrc, MDB_cursor *cdst)
75967596
/* Adjust other cursors pointing to mp */
75977597
MDB_cursor *m2, *m3;
75987598
MDB_dbi dbi = csrc->mc_dbi;
7599-
MDB_page *mp;
7599+
MDB_page *mpd, *mps;
76007600

7601+
mps = csrc->mc_pg[csrc->mc_top];
76017602
/* If we're adding on the left, bump others up */
76027603
if (!cdst->mc_ki[csrc->mc_top]) {
7603-
mp = cdst->mc_pg[csrc->mc_top];
7604+
mpd = cdst->mc_pg[csrc->mc_top];
76047605
for (m2 = csrc->mc_txn->mt_cursors[dbi]; m2; m2=m2->mc_next) {
76057606
if (csrc->mc_flags & C_SUB)
76067607
m3 = &m2->mc_xcursor->mx_cursor;
76077608
else
76087609
m3 = m2;
7609-
if (m3 == cdst) continue;
7610-
if (m3->mc_pg[csrc->mc_top] == mp && m3->mc_ki[csrc->mc_top] >=
7611-
cdst->mc_ki[csrc->mc_top]) {
7610+
if (m3 != cdst &&
7611+
m3->mc_pg[csrc->mc_top] == mpd &&
7612+
m3->mc_ki[csrc->mc_top] >= cdst->mc_ki[csrc->mc_top]) {
76127613
m3->mc_ki[csrc->mc_top]++;
76137614
}
7614-
}
7615-
7616-
mp = csrc->mc_pg[csrc->mc_top];
7617-
for (m2 = csrc->mc_txn->mt_cursors[dbi]; m2; m2=m2->mc_next) {
7618-
if (csrc->mc_flags & C_SUB)
7619-
m3 = &m2->mc_xcursor->mx_cursor;
7620-
else
7621-
m3 = m2;
7622-
if (m3 == csrc) continue;
7623-
if (m3->mc_pg[csrc->mc_top] == mp && m3->mc_ki[csrc->mc_top] ==
7624-
csrc->mc_ki[csrc->mc_top]) {
7615+
if (m3 !=csrc &&
7616+
m3->mc_pg[csrc->mc_top] == mps &&
7617+
m3->mc_ki[csrc->mc_top] == csrc->mc_ki[csrc->mc_top]) {
76257618
m3->mc_pg[csrc->mc_top] = cdst->mc_pg[cdst->mc_top];
76267619
m3->mc_ki[csrc->mc_top] = cdst->mc_ki[cdst->mc_top];
76277620
}
76287621
}
76297622
} else
76307623
/* Adding on the right, bump others down */
76317624
{
7632-
mp = csrc->mc_pg[csrc->mc_top];
76337625
for (m2 = csrc->mc_txn->mt_cursors[dbi]; m2; m2=m2->mc_next) {
76347626
if (csrc->mc_flags & C_SUB)
76357627
m3 = &m2->mc_xcursor->mx_cursor;
76367628
else
76377629
m3 = m2;
76387630
if (m3 == csrc) continue;
7639-
if (m3->mc_pg[csrc->mc_top] == mp) {
7631+
if (m3->mc_pg[csrc->mc_top] == mps) {
76407632
if (!m3->mc_ki[csrc->mc_top]) {
76417633
m3->mc_pg[csrc->mc_top] = cdst->mc_pg[cdst->mc_top];
76427634
m3->mc_ki[csrc->mc_top] = cdst->mc_ki[cdst->mc_top];

0 commit comments

Comments
 (0)