aboutsummaryrefslogtreecommitdiffstats
path: root/qpdf
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2017-08-29 04:25:45 +0200
committerJay Berkenbilt <ejb@ql.org>2017-08-29 18:33:01 +0200
commitec7d74a386c0b2f38990079c3b0d2a2b30be0e71 (patch)
treea29e676d80877814afd42a14f372c59b9361f62e /qpdf
parent1868a10f8b06631362618bfc85ca8646da4b4b71 (diff)
downloadqpdf-ec7d74a386c0b2f38990079c3b0d2a2b30be0e71.tar.zst
Add test case for overflow in PNG filter (fixes #150)
Diffstat (limited to 'qpdf')
-rw-r--r--qpdf/qtest/qpdf.test1
-rw-r--r--qpdf/qtest/qpdf/issue-150.out2
-rw-r--r--qpdf/qtest/qpdf/issue-150.pdf4
3 files changed, 7 insertions, 0 deletions
diff --git a/qpdf/qtest/qpdf.test b/qpdf/qtest/qpdf.test
index 5a28a91b..2fc7f63a 100644
--- a/qpdf/qtest/qpdf.test
+++ b/qpdf/qtest/qpdf.test
@@ -225,6 +225,7 @@ my @bug_tests = (
["147", "previously caused memory error", 2],
["148", "free memory on bad flate", 2],
["149", "xref prev pointer loop", 3],
+ ["150", "integer overflow", 2],
);
$n_tests += scalar(@bug_tests);
foreach my $d (@bug_tests)
diff --git a/qpdf/qtest/qpdf/issue-150.out b/qpdf/qtest/qpdf/issue-150.out
new file mode 100644
index 00000000..862b4d1e
--- /dev/null
+++ b/qpdf/qtest/qpdf/issue-150.out
@@ -0,0 +1,2 @@
+WARNING: issue-150.pdf: can't find PDF header
+overflow/underflow converting 9900000000000000000 to 64-bit integer
diff --git a/qpdf/qtest/qpdf/issue-150.pdf b/qpdf/qtest/qpdf/issue-150.pdf
new file mode 100644
index 00000000..c9ce992d
--- /dev/null
+++ b/qpdf/qtest/qpdf/issue-150.pdf
@@ -0,0 +1,4 @@
+00008 0 obj<</Type/XRef/Filter/Fl/DecodeParms<</Columns 9900000000000000000/Predictor 12>>/W[0 2 0]/Size 0>>stream
+xœc0endobj
+startxref
+4 \ No newline at end of file