aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2017-07-29 17:59:15 +0200
committerJay Berkenbilt <ejb@ql.org>2017-07-29 18:19:04 +0200
commit07d6f770b2a1c731cdf4f981ddc01466dbbc4ba0 (patch)
tree766194882af7049867e4e31b53af2918b25de13f /libqpdf
parent39d7307f3f3531638c5dee09e2eeff8340362d3f (diff)
downloadqpdf-07d6f770b2a1c731cdf4f981ddc01466dbbc4ba0.tar.zst
Better recovery of bad stream start (fixes #104)
Diffstat (limited to 'libqpdf')
-rw-r--r--libqpdf/QPDF.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc
index 16641247..56555261 100644
--- a/libqpdf/QPDF.cc
+++ b/libqpdf/QPDF.cc
@@ -1117,6 +1117,11 @@ QPDF::readObject(PointerHolder<InputSource> input,
else
{
QTC::TC("qpdf", "QPDF stream without newline");
+ if (! QUtil::is_space(ch))
+ {
+ QTC::TC("qpdf", "QPDF stream with non-space");
+ input->unreadCh(ch);
+ }
warn(QPDFExc(qpdf_e_damaged_pdf, input->getName(),
this->last_object_description,
input->tell(),