aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDF_linearization.cc
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2021-12-10 21:14:26 +0100
committerJay Berkenbilt <ejb@ql.org>2021-12-10 21:37:35 +0100
commitaf2a71aa2c0ab7a441cb4210295e3912800df9d0 (patch)
treece42e6dcb4ab161ac703c67aad846b274abaea48 /libqpdf/QPDF_linearization.cc
parent1c62c2a3427e92846ddaaae44f864022b2aade4f (diff)
downloadqpdf-af2a71aa2c0ab7a441cb4210295e3912800df9d0.tar.zst
Handle bitstream overflow errors more gracefully (fixes #581)
* Make it a runtime error, not a logic error * Include additional information * Capture it properly in checkLinearization
Diffstat (limited to 'libqpdf/QPDF_linearization.cc')
-rw-r--r--libqpdf/QPDF_linearization.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/libqpdf/QPDF_linearization.cc b/libqpdf/QPDF_linearization.cc
index 49593f81..56e42f29 100644
--- a/libqpdf/QPDF_linearization.cc
+++ b/libqpdf/QPDF_linearization.cc
@@ -71,9 +71,11 @@ QPDF::checkLinearization()
readLinearizationData();
result = checkLinearizationInternal();
}
- catch (QPDFExc& e)
+ catch (std::runtime_error& e)
{
- *this->m->err_stream << e.what() << std::endl;
+ *this->m->err_stream
+ << "WARNING: error encountered while checking linearization data: "
+ << e.what() << std::endl;
}
return result;
}