Index: third_party/WebKit/LayoutTests/fast/block/float/clear-intruding-floats-when-moving-to-inline-parent-3.html |
diff --git a/third_party/WebKit/LayoutTests/fast/block/float/clear-intruding-floats-when-moving-to-inline-parent-3.html b/third_party/WebKit/LayoutTests/fast/block/float/clear-intruding-floats-when-moving-to-inline-parent-3.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d98ea1e4f782de58d75dfad09d84d9bc364f8d9d |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/fast/block/float/clear-intruding-floats-when-moving-to-inline-parent-3.html |
@@ -0,0 +1,33 @@ |
+<!DOCTYPE html> |
+<style> |
+#container { |
+ float: right; |
+} |
+canvas{ |
+ display: block; |
+} |
+</style> |
+<li></li> |
+crbug.com/568744: Ensure an element's floats are cleared when it becomes inline. This test shouldn't crash. |
+<div id="container"> |
+ <canvas></canvas> |
+</div> |
+<pre id="pre"></pre> |
+<script> |
+ if (window.testRunner) |
+ testRunner.dumpAsText(); |
+ |
+ document.body.offsetTop; |
+ var pre = document.getElementById("pre") |
+ |
+ // Make the pre element have block children. |
+ pre.appendChild(document.createElement("canvas")); |
+ // Change the pre element so that it is now out-of-flow and folds into an adjacent anonymous block. |
+ pre.style.position = 'absolute'; |
+ // Destroy the float that should no longer be in the pre's float lists. |
+ document.getElementById("container").style.display = "none"; |
+ // Re-compute style, but don't layout. (Layout would rebuild float lists and avoid a crash.) |
+ getComputedStyle(pre).color; |
+ // Prompt the canvas to access the float destroyed above if it hasn't been removed from pre's float lists. |
+ document.body.style.zoom=0.50 |
+</script> |