blob: 4d0b4eedfe9d4414198888894ce650ccbffc673c [file] [log] [blame]
<!DOCTYPE html>
<title>
Tests that there is no crash when a layer's backing provider layer changes
and the layer is then removed.
</title>
<style>
.positioned {
position: absolute;
left: 25px;
width: 100px;
height: 100px;
}
.composited {
transform: translateZ(0);
background-color: blue;
}
.stackingContext {
position: absolute;
z-index: 0;
}
#child1 {
background-color: orange;
}
#child2 {
background-color: yellow;
}
#grandchild {
background-color: pink;
}
#container {
background-color: green;
}
</style>
<script>
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
function triggerLayout() {
document.body.scrollTop;
}
window.onload = function() {
triggerLayout();
document.getElementById('container').classList.add("stackingContext");
document.getElementById('child1').classList.add("composited");
triggerLayout();
document.getElementById('grandchild').classList.remove("positioned");
triggerLayout();
if (window.testRunner)
testRunner.notifyDone();
}
</script>
<p>This test should not crash or assert.</p>
<div class="composited positioned"></div>
<div id="container" class="positioned">
<div id="child1" class="positioned"></div>
<div id="child2" class="positioned">
<div id="grandchild" class="positioned"></div>
</div>
</div>