refactor(marktree): unpaired marktree_get_alt() returns itself

Avoids checking for invalid mark at callsite.
This commit is contained in:
Luuk van Baal
2024-01-13 17:09:59 +01:00
parent e6ddceda31
commit 4f544b3119
4 changed files with 5 additions and 15 deletions

View File

@@ -1972,13 +1972,10 @@ MTPos marktree_get_altpos(MarkTree *b, MTKey mark, MarkTreeIter *itr)
return marktree_get_alt(b, mark, itr).pos;
}
/// @return alt mark for a paired mark or mark itself for unpaired mark
MTKey marktree_get_alt(MarkTree *b, MTKey mark, MarkTreeIter *itr)
{
MTKey end = MT_INVALID_KEY;
if (mt_paired(mark)) {
end = marktree_lookup_ns(b, mark.ns, mark.id, !mt_end(mark), itr);
}
return end;
return mt_paired(mark) ? marktree_lookup_ns(b, mark.ns, mark.id, !mt_end(mark), itr) : mark;
}
static void marktree_itr_fix_pos(MarkTree *b, MarkTreeIter *itr)