Log Message
Merge 100827 BUG=103921 Review URL: http://codereview.chromium.org/8666014
Modified Paths
Added Paths
Diff
Copied: branches/chromium/912/LayoutTests/fast/dom/move-detached-child-in-range-expected.txt (from rev 100827, trunk/LayoutTests/fast/dom/move-detached-child-in-range-expected.txt) (0 => 101034)
--- branches/chromium/912/LayoutTests/fast/dom/move-detached-child-in-range-expected.txt (rev 0)
+++ branches/chromium/912/LayoutTests/fast/dom/move-detached-child-in-range-expected.txt 2011-11-23 01:58:18 UTC (rev 101034)
@@ -0,0 +1 @@
+Final end container, offset: [object HTMLHeadingElement], 1
Copied: branches/chromium/912/LayoutTests/fast/dom/move-detached-child-in-range.html (from rev 100827, trunk/LayoutTests/fast/dom/move-detached-child-in-range.html) (0 => 101034)
--- branches/chromium/912/LayoutTests/fast/dom/move-detached-child-in-range.html (rev 0)
+++ branches/chromium/912/LayoutTests/fast/dom/move-detached-child-in-range.html 2011-11-23 01:58:18 UTC (rev 101034)
@@ -0,0 +1,33 @@
+<html>
+<head>
+<script src=""
+<script>
+if (window.layoutTestController) {
+ layoutTestController.dumpAsText();
+ layoutTestController.waitUntilDone();
+}
+
+function go() {
+ frame = document.getElementById('frame');
+ node2 = document.createElement('b');
+ node1 = document.createElement('h1');
+ node1.appendChild(node2);
+ range = document.createRange();
+ range.selectNodeContents(node1);
+
+ frame.contentDocument.body.appendChild(node1);
+
+ node1.removeChild(node2);
+ delete node2;
+ gc();
+ document.body.innerText = 'Final end container, offset: ' + range.endContainer + ', ' + range.endOffset;
+ if (window.layoutTestController)
+ layoutTestController.notifyDone()
+}
+</script>
+</head>
+<body _onload_="go()">
+FAIL
+<iframe id="frame"></iframe>
+</body>
+</html>
Modified: branches/chromium/912/Source/WebCore/dom/RangeBoundaryPoint.h (101033 => 101034)
--- branches/chromium/912/Source/WebCore/dom/RangeBoundaryPoint.h 2011-11-23 00:44:43 UTC (rev 101033)
+++ branches/chromium/912/Source/WebCore/dom/RangeBoundaryPoint.h 2011-11-23 01:58:18 UTC (rev 101034)
@@ -59,7 +59,7 @@
RefPtr<Node> m_containerNode;
mutable int m_offsetInContainer;
- Node* m_childBeforeBoundary;
+ RefPtr<Node> m_childBeforeBoundary;
};
inline RangeBoundaryPoint::RangeBoundaryPoint(PassRefPtr<Node> container)
@@ -77,7 +77,7 @@
inline Node* RangeBoundaryPoint::childBefore() const
{
- return m_childBeforeBoundary;
+ return m_childBeforeBoundary.get();
}
inline void RangeBoundaryPoint::ensureOffsetIsValid() const
_______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes