mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
Fix step 14.2 of Range::ExtractContents
We need the last inclusive ancestor of start node that is not an inclusive ancestor of end node, not the first that is an inclusive ancestor of it.
This commit is contained in:
parent
be6940db59
commit
c0d79062b5
2 changed files with 3 additions and 19 deletions
|
@ -564,8 +564,9 @@ impl RangeMethods for Range {
|
|||
} else {
|
||||
// Step 14.1-2.
|
||||
let reference_node = start_node.ancestors()
|
||||
.find(|n| n.is_inclusive_ancestor_of(end_node.r()))
|
||||
.unwrap();
|
||||
.take_while(|n| !n.is_inclusive_ancestor_of(&end_node))
|
||||
.last()
|
||||
.unwrap_or(Root::from_ref(&start_node));
|
||||
// Step 14.3.
|
||||
(reference_node.GetParentNode().unwrap(), reference_node.index() + 1)
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue