aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2024-01-12 13:11:46 +0100
committerJay Berkenbilt <ejb@ql.org>2024-01-12 14:05:22 +0100
commitebb10f3256067c6e4ebea9a21a92d0199ac7fdf9 (patch)
tree5e1d6152bd2cf05f0c0a52e1467cea4dc88df3df /libqpdf
parent2c97aaddd50aacd849bd9d97102d21275fde94a2 (diff)
downloadqpdf-ebb10f3256067c6e4ebea9a21a92d0199ac7fdf9.tar.zst
Fix null pointer issue on array copy
Diffstat (limited to 'libqpdf')
-rw-r--r--libqpdf/QPDF_Array.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/libqpdf/QPDF_Array.cc b/libqpdf/QPDF_Array.cc
index c8cfe110..7d6f4539 100644
--- a/libqpdf/QPDF_Array.cc
+++ b/libqpdf/QPDF_Array.cc
@@ -1,5 +1,6 @@
#include <qpdf/QPDF_Array.hh>
+#include <qpdf/QTC.hh>
#include <qpdf/QPDFObjectHandle.hh>
#include <qpdf/QPDFObject_private.hh>
@@ -74,8 +75,10 @@ QPDF_Array::copy(bool shallow)
if (shallow) {
return do_create(new QPDF_Array(*this));
} else {
+ QTC::TC("qpdf", "QPDF_Array copy", sp ? 0 : 1);
if (sp) {
auto* result = new QPDF_Array();
+ result->sp = std::make_unique<Sparse>();
result->sp->size = sp->size;
for (auto const& element: sp->elements) {
auto const& obj = element.second;