Title: [100568] branches/chromium/912
- Revision
- 100568
- Author
- [email protected]
- Date
- 2011-11-16 23:50:07 -0800 (Wed, 16 Nov 2011)
Log Message
Merge 99731
BUG=89493
Review URL: http://codereview.chromium.org/8591014
Modified Paths
Added Paths
Property Changed
Diff
Modified: branches/chromium/912/LayoutTests/platform/mac/svg/overflow/overflow-on-foreignObject-expected.png
(Binary files differ)
Modified: branches/chromium/912/LayoutTests/platform/mac/svg/overflow/overflow-on-foreignObject-expected.txt (100567 => 100568)
--- branches/chromium/912/LayoutTests/platform/mac/svg/overflow/overflow-on-foreignObject-expected.txt 2011-11-17 07:46:42 UTC (rev 100567)
+++ branches/chromium/912/LayoutTests/platform/mac/svg/overflow/overflow-on-foreignObject-expected.txt 2011-11-17 07:50:07 UTC (rev 100568)
@@ -3,5 +3,5 @@
layer at (0,0) size 500x500
RenderSVGRoot {svg} at (200,200) size 300x300
RenderSVGForeignObject {foreignObject} at (100,100) size 300x300
-layer at (100,100) size 6006x6006 backgroundClip at (0,0) size 800x600 clip at (0,0) size 800x600 outlineClip at (0,0) size 800x600
- RenderBlock (positioned) {html:div} at (100,100) size 6006x6006 [bgcolor=#008000] [border: (3px solid #000000)]
+layer at (0,0) size 6006x6006 backgroundClip at (0,0) size 800x600 clip at (0,0) size 800x600 outlineClip at (0,0) size 800x600
+ RenderBlock (positioned) {html:div} at (0,0) size 6006x6006 [bgcolor=#008000] [border: (3px solid #000000)]
Copied: branches/chromium/912/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash-expected.txt (from rev 99731, trunk/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash-expected.txt) (0 => 100568)
--- branches/chromium/912/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash-expected.txt (rev 0)
+++ branches/chromium/912/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash-expected.txt 2011-11-17 07:50:07 UTC (rev 100568)
@@ -0,0 +1 @@
+PASS
Copied: branches/chromium/912/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash.html (from rev 99731, trunk/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash.html) (0 => 100568)
--- branches/chromium/912/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash.html (rev 0)
+++ branches/chromium/912/LayoutTests/svg/foreignObject/absolute-position-foreign-object-child-crash.html 2011-11-17 07:50:07 UTC (rev 100568)
@@ -0,0 +1,25 @@
+<script src=""
+
+<svg>
+ <foreignObject>
+ <div style="position: absolute;">
+ <div id="div1"></div>
+ <div id="div2" style="overflow:hidden; width:100px; height:100px;">x</div>
+ </div>
+ </foreignObject>
+</svg>
+<script>
+function RemoveNode(n) { n.parentNode.removeChild(n) }
+ window._onload_ = function() {
+ document.body.offsetTop; // Force layout.
+ RemoveNode(document.getElementById('div1'));
+ document.body.offsetTop; // Force layout.
+ RemoveNode(document.getElementById('div2'));
+ if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+}
+</script>
+<body>
+ PASS
+</body>
+
Modified: branches/chromium/912/Source/WebCore/rendering/RenderObject.cpp (100567 => 100568)
--- branches/chromium/912/Source/WebCore/rendering/RenderObject.cpp 2011-11-17 07:46:42 UTC (rev 100567)
+++ branches/chromium/912/Source/WebCore/rendering/RenderObject.cpp 2011-11-17 07:50:07 UTC (rev 100568)
@@ -2155,6 +2155,10 @@
while (o && o->style()->position() == StaticPosition && !o->isRenderView() && !(o->hasTransform() && o->isRenderBlock())) {
if (repaintContainerSkipped && o == repaintContainer)
*repaintContainerSkipped = true;
+#if ENABLE(SVG)
+ if (o->isSVGForeignObject()) // foreignObject is the containing block for contents inside it
+ break;
+#endif
o = o->parent();
}
}
Property changes on: branches/chromium/912/Source/WebCore/rendering/RenderObject.cpp
___________________________________________________________________
Added: svn:executable
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes