Bug 1282076 - Crashtest that struct data is cached if we have animation data. r=heycam

1282076-1.html is a test case with a CSS animation.
1282076-2.html is a test case with a scripit animation.

Both of tests crashed before landing the fix for bug 1282076.
Although neither test does not crash currently any more with/without the fix,
it's worth adding them.
This commit is contained in:
Hiroyuki Ikezoe 2016-09-22 19:42:09 +09:00
Родитель 70b86104c9
Коммит cc0747ceed
3 изменённых файлов: 99 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,51 @@
<script>
function start() {
o0=document;
o24=document.createElement('table');
o35=window;
o60=document.createElement('input');
o24.appendChild(o60);
o62=document.body;
o66=document.createElement('input');
o62.appendChild(o66);
o60.innerHTML="<svg><color-profile><script><rect><animateColor><style><style>*{ all: unset<script><style>div<style>";
o93=o60.querySelectorAll('*')[5];
o97=o60.querySelectorAll('*')[9];
document.body.appendChild(o24);
o305=document.createTextNode("{}:first-line{");
o93.appendChild(o305);
o318=(new DOMParser()).parseFromString('','text/html');
o320=o318.all[1];
o355=document.createElement('style');
o356=document.createTextNode("@keyframes key2{ from{ opacity: 0}}#id2{ animation-name: key2; animation-duration: 0.01s");
o355.appendChild(o356);
o97.appendChild(o355);
o66.style.display='list-item';
o473=document.createElement('script');
o24.appendChild(o473);
o577=document.createElement('style');
o320.appendChild(o577);
o577.style.position='fixed';
document.replaceChild(o318.documentElement,document.documentElement);
o908=(new DOMParser()).parseFromString('','text/html');
o911=o908.all[2];
o911.style.display='inline';
o577.id='id2';
o1202=document.createElement('table');
document.body=o911;
document.body.appendChild(o1202);
document.replaceChild(o0.documentElement,document.documentElement);
o1232=o473.parentNode;
o1233=o1232.parentNode;
document.body=o1233;
o35.scrollByLines(1);
o577.style.position='absolute';
setTimeout(f2, 4);
}
function f2() {
o0.designMode='on';
o0.execCommand('insertparagraph',false,null);
}
</script>
<body onload="start()"></body>

Просмотреть файл

@ -0,0 +1,46 @@
<script>
function start() {
o0=document;
o24=document.createElement('table');
o35=window;
o60=document.createElement('input');
o24.appendChild(o60);
o62=document.body;
o66=document.createElement('input');
o62.appendChild(o66);
o60.innerHTML="<svg><color-profile><script><rect><animateColor><style><style>*{ all: unset<script>";
o93=o60.querySelectorAll('*')[5];
document.body.appendChild(o24);
o305=document.createTextNode("{}:first-line{");
o93.appendChild(o305);
o318=(new DOMParser()).parseFromString('','text/html');
o320=o318.all[1];
o66.style.display='list-item';
o473=document.createElement('script');
o24.appendChild(o473);
o577=document.createElement('style');
o320.appendChild(o577);
o577.style.position='fixed';
document.replaceChild(o318.documentElement,document.documentElement);
o908=(new DOMParser()).parseFromString('','text/html');
o911=o908.all[2];
o911.style.display='inline';
o577.animate({ opacity: [0, 1] }, 100);
o1202=document.createElement('table');
document.body=o911;
document.body.appendChild(o1202);
document.replaceChild(o0.documentElement,document.documentElement);
o1232=o473.parentNode;
o1233=o1232.parentNode;
document.body=o1233;
o35.scrollByLines(1);
o577.style.position='absolute';
setTimeout(f2, 4);
}
function f2() {
o0.designMode='on';
o0.execCommand('insertparagraph',false,null);
}
</script>
<body onload="start()"></body>

Просмотреть файл

@ -153,6 +153,8 @@ pref(layout.css.background-clip-text.enabled,true) load 1275026.html
load 1278463-1.html
pref(dom.animations-api.core.enabled,true) load 1277908-1.html
load 1277908-2.html
load 1282076-1.html
pref(dom.animations-api.core.enabled,true) load 1282076-2.html
pref(dom.animations-api.core.enabled,true) load 1290994-1.html
pref(dom.animations-api.core.enabled,true) load 1290994-2.html
pref(dom.animations-api.core.enabled,true) load 1290994-3.html