blob: 438206174817f27ac7924837d95c39b551db565b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
<html><head>
<title>Testcase1 bug 309322 - Evil testcase using multiple display:table-caption causes crash</title>
<style>
*[toggle_style],*[toggle_style1],*[toggle_style2],*[toggle_style3],*[toggle_style4]{
display:table-caption;
}
</style>
<script>
function doe(i){
var x=document.body.getElementsByTagName('*');
var xl=x.length;i=i+1;
x[i-1].removeAttribute('toggle_style');
if ((i)<xl) x[i].setAttribute('toggle_style','toggle_style');
if ((i+1)<xl) {x[i+1].setAttribute('toggle_style1','toggle_style');
x[i].removeAttribute('toggle_style1');
}
if ((i+2)<xl) {x[i+2].setAttribute('toggle_style2','toggle_style');
x[i+1].removeAttribute('toggle_style2');
}
if ((i+3)<xl) {x[i+3].setAttribute('toggle_style3','toggle_style');
x[i+2].removeAttribute('toggle_style3');
}
if ((i+4)<xl) {x[i+4].setAttribute('toggle_style4','toggle_style');
x[i+3].removeAttribute('toggle_style4');
}
if ((i+4)==xl) {
x[i+3].removeAttribute('toggle_style4');
}
if ((i+3)==xl) {
x[i+2].removeAttribute('toggle_style3');
}
if ((i+2)==xl) {
x[i+1].removeAttribute('toggle_style2');
}
if ((i+1)==xl) {
x[i].removeAttribute('toggle_style1');
}
setTimeout(doe,20,i);
}
function doe2(){
var x=document.links[0].cloneNode(true);
document.links[0].appendChild(x);
}
</script>
</head>
<body onload="doe(1)">
<button onclick="doe(1)">Clicking on this button should not crash Mozilla</button>
<table><tbody><tr><td>
<span><br></span>
<a href="#">Galloway<span>Galloway</span><span>Galloway</span><span>Galloway</span><span>Galloway</span><span>Galloway</span><span>Galloway</span><span>Galloway</span><span>Galloway</span></a>
</td></tr></tbody></table>
</body></html>
|