mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-09 01:08:39 +09:00
Update identifier map entries and notify if they get removed.
This can happen through DestroyElementMaps() Based on work by Markus Stange and Edgar Chen.
This commit is contained in:
parent
c0a28dbd30
commit
39cc10dde8
4 changed files with 81 additions and 6 deletions
46
dom/canvas/test/reftest/filters/liveness-document-open.html
Normal file
46
dom/canvas/test/reftest/filters/liveness-document-open.html
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<title>canvas filters: remove referenced filter element through document.open()</title>
|
||||
|
||||
<body onload="loaded()">
|
||||
|
||||
<canvas id="canvas" width="10" height="10"></canvas>
|
||||
|
||||
<svg height="0">
|
||||
<filter id="filter">
|
||||
<feFlood flood-color="red"/>
|
||||
</filter>
|
||||
</svg>
|
||||
|
||||
<script>
|
||||
|
||||
function loaded() {
|
||||
var ctx = document.getElementById('canvas').getContext('2d');
|
||||
|
||||
ctx.filter = 'url(#filter)';
|
||||
ctx.fillRect(0, 0, 10, 10); // do a draw first to work around bug 1287316
|
||||
|
||||
document.open();
|
||||
|
||||
// The document.open() call removed #filter from the document. So the filter
|
||||
// reference should now be invalid, and the rect should be drawn without a
|
||||
// filter applied, resulting in black.
|
||||
ctx.fillRect(0, 0, 10, 10);
|
||||
|
||||
try {
|
||||
var data = ctx.getImageData(0, 0, 1, 1).data;
|
||||
if (data[0] == 0 && data[1] == 0 && data[2] == 0 && data[3] == 255) {
|
||||
// Successfully painted black.
|
||||
document.write('PASS');
|
||||
} else {
|
||||
// Painted something else, like red.
|
||||
document.write('FAIL');
|
||||
}
|
||||
} catch (e) {
|
||||
document.write('getImageData failed');
|
||||
}
|
||||
document.close();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
|
@ -6,6 +6,7 @@ default-preferences pref(canvas.filters.enabled,true)
|
|||
fuzzy-if(azureSkia,1,1500) == global-alpha.html global-alpha-ref.html
|
||||
== global-composite-operation.html global-composite-operation-ref.html
|
||||
== liveness.html ref.html
|
||||
== liveness-document-open.html data:text/html,PASS
|
||||
== multiple-drop-shadows.html shadow-ref.html
|
||||
== shadow.html shadow-ref.html
|
||||
== subregion-fill-paint.html subregion-ref.html
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue