Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
michael@0 | 1 | <html> |
michael@0 | 2 | <head> |
michael@0 | 3 | <title>Testcase bug - Crash [@ nsSubDocumentFrame::Reflow] with testcase, using first-letter, first-line, inline-block and iframes</title> |
michael@0 | 4 | </head> |
michael@0 | 5 | <body> |
michael@0 | 6 | <div style="width:1440px;" id="a"> |
michael@0 | 7 | <div> |
michael@0 | 8 | <fieldset> |
michael@0 | 9 | |
michael@0 | 10 | <legend style="display: inline-block;"></legend> |
michael@0 | 11 | <span></span> |
michael@0 | 12 | <iframe></iframe> |
michael@0 | 13 | <iframe></iframe> |
michael@0 | 14 | <legend style="display: list-item;"> |
michael@0 | 15 | <iframe></iframe> |
michael@0 | 16 | </legend> |
michael@0 | 17 | </fieldset> |
michael@0 | 18 | </div> |
michael@0 | 19 | </div> |
michael@0 | 20 | <script> |
michael@0 | 21 | function addfirstline(){ |
michael@0 | 22 | var x=document.createElementNS('http://www.w3.org/1999/xhtml','style'); |
michael@0 | 23 | x.innerHTML='\ |
michael@0 | 24 | #a *::first-letter { }\ |
michael@0 | 25 | #a *::first-line {}\ |
michael@0 | 26 | #a *::after { content:"anonymous text"; text-transform: uppercase;height: 90%;}\ |
michael@0 | 27 | #a *::before { content:"before text"; font-size: 10px;}\ |
michael@0 | 28 | '; |
michael@0 | 29 | document.documentElement.appendChild(x); |
michael@0 | 30 | } |
michael@0 | 31 | setTimeout(addfirstline,200); |
michael@0 | 32 | |
michael@0 | 33 | var j=0; |
michael@0 | 34 | function replacestyles(i){ |
michael@0 | 35 | var x=document.getElementById('a').getElementsByTagName('*'); |
michael@0 | 36 | if (j>=2) return; |
michael@0 | 37 | if (x[i] && x[i+1]) |
michael@0 | 38 | { |
michael@0 | 39 | var temp = x[i+1].getAttribute('style'); |
michael@0 | 40 | x[i+1].setAttribute('style', x[i].getAttribute('style')); |
michael@0 | 41 | x[i].setAttribute('style', temp); |
michael@0 | 42 | } |
michael@0 | 43 | else { i = 0;j++;} |
michael@0 | 44 | i++; |
michael@0 | 45 | setTimeout(replacestyles,50,i); |
michael@0 | 46 | } |
michael@0 | 47 | setTimeout(replacestyles,500,0); |
michael@0 | 48 | </script> |
michael@0 | 49 | </body> |
michael@0 | 50 | </html> |