aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/range.rs
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2016-02-29 04:18:06 +0530
committerbors-servo <lbergstrom+bors@mozilla.com>2016-02-29 04:18:06 +0530
commitb3964a89585539082982160f5f4fb4bd05ddac2f (patch)
tree52184bf77c453a2abbce634f2a9c9511c747fd6f /components/script/dom/range.rs
parent492e3241715e125df3587c8454ce52c925377152 (diff)
parentc713734b4891fb58eb78ff823eaa37c99de0867e (diff)
downloadservo-b3964a89585539082982160f5f4fb4bd05ddac2f.tar.gz
servo-b3964a89585539082982160f5f4fb4bd05ddac2f.zip
Auto merge of #9797 - nox:range-insertnode, r=KiChjang
Fix step 1 of Range::InsertNode The method needs to throw when trying to insert start node into range. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9797) <!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/range.rs')
-rw-r--r--components/script/dom/range.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/components/script/dom/range.rs b/components/script/dom/range.rs
index df3d0d35883..7044746ddf1 100644
--- a/components/script/dom/range.rs
+++ b/components/script/dom/range.rs
@@ -658,6 +658,9 @@ impl RangeMethods for Range {
let start_offset = self.StartOffset();
// Step 1.
+ if &*start_node == node {
+ return Err(Error::HierarchyRequest);
+ }
match start_node.type_id() {
// Handled under step 2.
NodeTypeId::CharacterData(CharacterDataTypeId::Text) => (),