Index: LayoutTests/fast/block/float/block-formatting-context-crash.html |
diff --git a/LayoutTests/fast/block/float/block-formatting-context-crash.html b/LayoutTests/fast/block/float/block-formatting-context-crash.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..25972729c8738956e9c15afb067c98a3563ca356 |
--- /dev/null |
+++ b/LayoutTests/fast/block/float/block-formatting-context-crash.html |
@@ -0,0 +1,42 @@ |
+<script> |
+if (window.testRunner) { |
+ testRunner.waitUntilDone(); |
+ testRunner.dumpAsText(); |
+} |
+</script> |
+<style> |
+.fixed:nth-last-child(even) { display: table-column; position: fixed; } |
+.float { float: left; border-style: ridge; } |
+</style> |
+<script> |
+function crash(caption, thead) { |
+ caption.appendChild(thead); |
+ if (window.testRunner) |
+ testRunner.notifyDone(); |
+} |
+ |
+function boom() { |
+ var section = document.createElement('section'); |
+ section.setAttribute('class', 'fixed'); |
+ document.documentElement.appendChild(section); |
+ var input = document.createElement('input'); |
+ document.documentElement.appendChild(input); |
+ var input2 = document.createElement('input'); |
+ document.documentElement.appendChild(input2); |
+ var table = document.createElement('table'); |
+ document.documentElement.appendChild(table); |
+ var tbody = document.createElement('tbody'); |
+ document.documentElement.appendChild(tbody); |
+ var thead = document.createElement('thead'); |
+ thead.setAttribute('class', 'float'); |
+ var ul = document.createElement('ul'); |
+ document.documentElement.appendChild(ul); |
+ var caption = document.createElement('caption'); |
+ document.documentElement.appendChild(caption); |
+ setTimeout(function() { ul.appendChild(table); }, 50); |
+ section.appendChild(thead); |
+ setTimeout(crash(caption, thead), 60); |
+} |
+window.onload = boom; |
+</script> |
+<p> The test should not crash.</p> |