summaryrefslogtreecommitdiffstats
path: root/layout/printing/crashtests
diff options
context:
space:
mode:
Diffstat (limited to 'layout/printing/crashtests')
-rw-r--r--layout/printing/crashtests/1662259.html7
-rw-r--r--layout/printing/crashtests/1663722.html14
-rw-r--r--layout/printing/crashtests/1671503.html12
-rw-r--r--layout/printing/crashtests/1748277.html26
-rw-r--r--layout/printing/crashtests/1748277.pngbin0 -> 228 bytes
-rw-r--r--layout/printing/crashtests/1758199-1.html54
-rw-r--r--layout/printing/crashtests/1804571.html11
-rw-r--r--layout/printing/crashtests/1804794.html10
-rw-r--r--layout/printing/crashtests/1804798.html7
-rw-r--r--layout/printing/crashtests/1819468-1.html21
-rw-r--r--layout/printing/crashtests/1819468-2.html18
-rw-r--r--layout/printing/crashtests/509839-1.html10
-rw-r--r--layout/printing/crashtests/509839-2.html8
-rw-r--r--layout/printing/crashtests/576878.xhtml9
-rw-r--r--layout/printing/crashtests/793844.html10
-rw-r--r--layout/printing/crashtests/crashtests.list14
16 files changed, 231 insertions, 0 deletions
diff --git a/layout/printing/crashtests/1662259.html b/layout/printing/crashtests/1662259.html
new file mode 100644
index 0000000000..0e5d338635
--- /dev/null
+++ b/layout/printing/crashtests/1662259.html
@@ -0,0 +1,7 @@
+<script>
+window.onload = () => {
+ SpecialPowers.wrap(window).printPreview()?.close()
+}
+</script>
+<body hidden>
+<iframe src='file:'>
diff --git a/layout/printing/crashtests/1663722.html b/layout/printing/crashtests/1663722.html
new file mode 100644
index 0000000000..cd7a32a317
--- /dev/null
+++ b/layout/printing/crashtests/1663722.html
@@ -0,0 +1,14 @@
+<html class="reftest-wait">
+<head>
+ <script>
+ document.addEventListener("DOMContentLoaded", () => {
+ const proxy = SpecialPowers.wrap(self).printPreview();
+ proxy.sizeToContent();
+ setTimeout(function () {
+ proxy.close();
+ document.documentElement.className = "";
+ }, 0);
+ })
+ </script>
+</head>
+</html>
diff --git a/layout/printing/crashtests/1671503.html b/layout/printing/crashtests/1671503.html
new file mode 100644
index 0000000000..5399c7d71e
--- /dev/null
+++ b/layout/printing/crashtests/1671503.html
@@ -0,0 +1,12 @@
+<html class="reftest-wait">
+<script>
+document.addEventListener("DOMContentLoaded", () => {
+ window.setTimeout(() => {
+ SpecialPowers.wrap(window).printPreview()?.close()
+ SpecialPowers.wrap(window).printPreview()?.close()
+ document.documentElement.className = "";
+ }, 0)
+})
+</script>
+<iframe src='data:text/html,foo'></iframe>
+</html>
diff --git a/layout/printing/crashtests/1748277.html b/layout/printing/crashtests/1748277.html
new file mode 100644
index 0000000000..9cfbef2c46
--- /dev/null
+++ b/layout/printing/crashtests/1748277.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<style>
+ @namespace url(http://www.w3.org/1998/Math/MathML);
+
+ * {
+ padding-inline-start: 27em;
+ break-after: page;
+ content: url(1748277.png);
+ writing-mode: sideways-lr;
+ }
+</style>
+<script>
+ document.addEventListener("DOMContentLoaded", () => {
+ SpecialPowers.wrap(window).printPreview()?.close()
+ })
+</script>
+<math>
+ <mfrac>
+ <munder>
+ <ms>
+ <mglyph>
+ </mglyph>
+ </ms>
+ </munder>
+ </mfrac>
+</math>
diff --git a/layout/printing/crashtests/1748277.png b/layout/printing/crashtests/1748277.png
new file mode 100644
index 0000000000..6bcf82782e
--- /dev/null
+++ b/layout/printing/crashtests/1748277.png
Binary files differ
diff --git a/layout/printing/crashtests/1758199-1.html b/layout/printing/crashtests/1758199-1.html
new file mode 100644
index 0000000000..3f7c9227a4
--- /dev/null
+++ b/layout/printing/crashtests/1758199-1.html
@@ -0,0 +1,54 @@
+<html class="reftest-wait">
+<script>
+let pp;
+let documentElements = [];
+documentElements.push(document.documentElement);
+
+window.onload = () => {
+ documentElements.push(document.documentElement);
+
+ let o = document.getElementById('a')
+ o.parentNode.appendChild(o)
+ pp = SpecialPowers.wrap(self).printPreview();
+ pp?.print()
+ window.requestIdleCallback(() => {
+ documentElements.push(document.documentElement);
+
+ document.write('');
+
+ setTimeout(finish, 100);
+ });
+}
+
+function finish() {
+
+ // The printPreview call above actually opens two print preview windows
+ // because the <embed src='#'> below causes a second one to open. At least
+ // we close the one window we can access, not sure if there is a way to get
+ // ahold of the other window to close it. So this test leaves a window open
+ // after it finishes.
+ try { pp.close(); } catch (e) {}
+
+ if (document.documentElement) {
+ try { document.documentElement.className = ""; } catch (e) {}
+ }
+
+ // The documentElement that the reftest harness looks at to determine if the
+ // test is done is not what document.documentElement points to when this code
+ // is run. So we save all the document.documentElement's we encounter while
+ // running this test and clear all of their class names.
+ for (let de of documentElements) {
+ if (de) {
+ try {
+ de.className = "";
+ } catch (e) {}
+ }
+ }
+}
+</script>
+<style>
+:first-of-type { padding-block-start: 99% }
+</style>
+<mark id='a'>
+<embed src='#'>
+</html>
diff --git a/layout/printing/crashtests/1804571.html b/layout/printing/crashtests/1804571.html
new file mode 100644
index 0000000000..b4f1c7dad3
--- /dev/null
+++ b/layout/printing/crashtests/1804571.html
@@ -0,0 +1,11 @@
+<script>
+window.onload = () => {
+ SpecialPowers.wrap(window).printPreview()?.close()
+}
+</script>
+<style>
+:only-child { float: left }
+</style>
+<ruby>
+<label>
+a
diff --git a/layout/printing/crashtests/1804794.html b/layout/printing/crashtests/1804794.html
new file mode 100644
index 0000000000..e071b392a4
--- /dev/null
+++ b/layout/printing/crashtests/1804794.html
@@ -0,0 +1,10 @@
+<script>
+window.onload = () => {
+ SpecialPowers.wrap(window).printPreview()?.close()
+}
+</script>
+<style>
+html { column-count: 5 }
+</style>
+<hr style="page: a">
+<a>A</a>
diff --git a/layout/printing/crashtests/1804798.html b/layout/printing/crashtests/1804798.html
new file mode 100644
index 0000000000..dedf5d8ea9
--- /dev/null
+++ b/layout/printing/crashtests/1804798.html
@@ -0,0 +1,7 @@
+<script>
+window.onload = () => {
+ SpecialPowers.wrap(window).printPreview()?.close()
+}
+</script>
+<textarea></textarea>
+<textarea>
diff --git a/layout/printing/crashtests/1819468-1.html b/layout/printing/crashtests/1819468-1.html
new file mode 100644
index 0000000000..1ce7ded9e2
--- /dev/null
+++ b/layout/printing/crashtests/1819468-1.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<style>
+.c {
+ break-after: page;
+ page: Rotated;
+}
+</style>
+<script>
+document.addEventListener("DOMContentLoaded", () => {
+ b.insertAdjacentHTML("afterBegin", a.innerHTML)
+ SpecialPowers.wrap(window).printPreview()?.close()
+})
+</script>
+<audio>
+<optgroup id="a">
+<option class="c">a</option>
+</audio>
+<menu style="max-height: 0em">
+<menu id="b"></menu>
+</menu>
+<select class="c">
diff --git a/layout/printing/crashtests/1819468-2.html b/layout/printing/crashtests/1819468-2.html
new file mode 100644
index 0000000000..65b957d95f
--- /dev/null
+++ b/layout/printing/crashtests/1819468-2.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<style>
+.c {
+ break-after: page;
+ page: Rotated;
+}
+</style>
+<script>
+document.addEventListener("DOMContentLoaded", () => {
+ SpecialPowers.wrap(window).printPreview()?.close()
+})
+</script>
+<menu style="max-height: 0em">
+<menu id="b">
+<option class="c">a</option>
+</menu>
+</menu>
+<select class="c">
diff --git a/layout/printing/crashtests/509839-1.html b/layout/printing/crashtests/509839-1.html
new file mode 100644
index 0000000000..e531f1f581
--- /dev/null
+++ b/layout/printing/crashtests/509839-1.html
@@ -0,0 +1,10 @@
+<html class="reftest-paged"><head>
+<title>Crash [@ nsViewManager::CreateView][@ nsCSSFrameConstructor::AddFrameConstructionItemsInternal] on closing print preview with transform, position: fixed table displays</title>
+</head><body>
+<div style="position: fixed;">
+<div style="display: table-header-group; transform: rotate(1deg);">
+<div style="position: relative;"></div>
+<div style="display: table-row;page-break-before: always;"></div>
+</div>
+</body>
+</html>
diff --git a/layout/printing/crashtests/509839-2.html b/layout/printing/crashtests/509839-2.html
new file mode 100644
index 0000000000..94b29816cf
--- /dev/null
+++ b/layout/printing/crashtests/509839-2.html
@@ -0,0 +1,8 @@
+<html style="position: fixed; transform: scale(0.000001);" class="reftest-paged">
+<head>
+</head>
+<body>
+<div style="display: table-row;"></div>
+<div style="display: table-row; page-break-before: right;"></div>
+</body>
+</html>
diff --git a/layout/printing/crashtests/576878.xhtml b/layout/printing/crashtests/576878.xhtml
new file mode 100644
index 0000000000..428fed9307
--- /dev/null
+++ b/layout/printing/crashtests/576878.xhtml
@@ -0,0 +1,9 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:mathml="http://www.w3.org/1998/Math/MathML" class="reftest-paged">
+
+<mathml:mfenced style="position: fixed;">
+<span style="position: inherit; float: right;"><span style="position:fixed;">b</span></span>
+</mathml:mfenced>
+<div style="page-break-before: always; "/>
+
+m
+</html>
diff --git a/layout/printing/crashtests/793844.html b/layout/printing/crashtests/793844.html
new file mode 100644
index 0000000000..3165fc1794
--- /dev/null
+++ b/layout/printing/crashtests/793844.html
@@ -0,0 +1,10 @@
+<html class="reftest-paged">
+<head>
+<title>crash in nsContentList::nsContentList on print preview</title>
+</head><body>
+
+<iframe onload="window.location.reload()" src="data:text/html,">
+</iframe>
+
+
+</body></html>
diff --git a/layout/printing/crashtests/crashtests.list b/layout/printing/crashtests/crashtests.list
new file mode 100644
index 0000000000..e2c57b282c
--- /dev/null
+++ b/layout/printing/crashtests/crashtests.list
@@ -0,0 +1,14 @@
+load 509839-1.html
+load 509839-2.html
+load 576878.xhtml
+asserts-if(Android,0-1) load 793844.html
+skip-if(Android) load 1662259.html
+skip-if(Android) pref(dom.window.sizeToContent.enabled,true) load 1663722.html
+skip-if(Android) load 1671503.html
+load 1748277.html # Bug 1751260
+skip-if(Android) load 1758199-1.html # printPreview doesn't work on android
+load 1804571.html
+load 1804798.html
+load 1804794.html
+load 1819468-1.html
+load 1819468-2.html