More precisely, when the right child of an entry in the root page split during deletions, the cursor needs to be moved (like in the non-root pages), and wasn't
GGEFV4YYK7E6J3544XSXN5CBASQI3QE6LTFZCJAGOXHEEKD6BRCQC
77TAHKV4VZ4SWZZBEND24Y6BL7JLRXPYO33CA5FRH53WXEWSWS4QC
TSMS6W4DOKQNUQ4PEMTLOIODR33VFPN6MMNS73ZPSU4BOQVRGPNAC
OP6SVMOD2GTQ7VNJ4E5KYFG4MIYA7HBMXJTADALMZH4PY7OQRMZQC
QEUTVAZ4F4EJXRDMWDMYXF6XEDMX7YPVG4IIXEKPIR3K54E5W5OAC
APPY2E7M5NHNC6MFYXSVEKJVAILK7YAZVTVE3W75EK2JNFVS3XBQC
DASFQGORX56YK5E4Y7GGYZSQQQMUXYTZZ4A6IVWSTI3QGRUORLPAC
OTWDDJE7TTE73D6BGF4ZN6BH2NFUFLPME2VJ3CPALH463UGWLEIQC
LSQ6V7M66TEGLJ7QBLRVDX4E7UKJTDQTEXZOS3KGPGFKVXNLPKBQC
JIQOPUYH6IHOLTTUMFUXGYCEFM5NAFKUFF3GFUKOXJA5FZLDM76AC
HN6Z5DU4WYMAIOOSNVHLIIMNF6Q53TNJ7YC27SLKWNXVYCTACQKQC
73Z2UB3JGRLFNFORE7D64O4IHIFSZASD4G4FLJ4FJLHANT75MGIAC
// If this split isn't at the root, and the page
// modified in the last step is the one on the right
// of the current entry, move right one step before
// inserting the split key/value.
// If the page modified in the last step is the one on
// the right of the current entry, move right one step
// before inserting the split key/value.
let mut c1 = m.c1.clone();
if !m.skip_first && !m.mod_is_left {
// This means that the page below just split, since we
// have to insert an extra entry on the root page.
//
// However, the extra entry is to be inserted (by
// `P::put`) *before* `c1`'s first element, which is
// incorrect since the page that split is the right child
// of `c1`'s first element. Therefore, we need to move
// `c1` one notch to the right.
assert!(m.ins2.is_none());
P::move_next(&mut c1);
}