mirror of
https://gitee.com/vnotex/vnote.git
synced 2025-07-05 05:49:53 +08:00
MarkdownEditor: fix bug in finding current heading logics
This commit is contained in:
parent
2369f6c4c8
commit
e454ea6e61
@ -785,7 +785,13 @@ int MarkdownEditor::getHeadingIndexByBlockNumber(int p_blockNumber) const
|
||||
if (val == p_blockNumber) {
|
||||
return mid;
|
||||
} else if (val > p_blockNumber) {
|
||||
// Skip the -1 headings.
|
||||
// Bad case: [0, 2, 3, 43, 44, -1, 46, 60].
|
||||
// If not skipped, [left, right] will be stuck at [4, 5].
|
||||
right = mid - 1;
|
||||
while (right >= left && m_headings[right].m_blockNumber == -1) {
|
||||
--right;
|
||||
}
|
||||
} else {
|
||||
left = mid;
|
||||
}
|
||||
@ -794,7 +800,7 @@ int MarkdownEditor::getHeadingIndexByBlockNumber(int p_blockNumber) const
|
||||
if (m_headings[left].m_blockNumber <= p_blockNumber && m_headings[left].m_blockNumber != -1) {
|
||||
return left;
|
||||
}
|
||||
// Find the last heading with block number not greater than @p_blockNumber.
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user