diff options
author | Jay Berkenbilt <ejb@ql.org> | 2022-09-07 22:49:31 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2022-09-08 16:19:38 +0200 |
commit | 264e25f391f83bcbeb60590f18ff96719b086454 (patch) | |
tree | ad7a6daae5a2350d56a521eb022fea30e799b95c /libqpdf/QPDFObjectHandle.cc | |
parent | a615985865ca73249a7b21e2f28b440cb6c16636 (diff) | |
download | qpdf-264e25f391f83bcbeb60590f18ff96719b086454.tar.zst |
Clear owning QPDF information for all objects, not just indirect
Diffstat (limited to 'libqpdf/QPDFObjectHandle.cc')
-rw-r--r-- | libqpdf/QPDFObjectHandle.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libqpdf/QPDFObjectHandle.cc b/libqpdf/QPDFObjectHandle.cc index 3d011c1d..fa8aae7f 100644 --- a/libqpdf/QPDFObjectHandle.cc +++ b/libqpdf/QPDFObjectHandle.cc @@ -248,6 +248,17 @@ QPDFObjectHandle::operator!=(QPDFObjectHandle const& rhs) const return this->obj != rhs.obj; } +void +QPDFObjectHandle::reset() +{ + // Recursively remove association with any QPDF object. This + // method may only be called during final destruction. See + // comments in QPDF::~QPDF(). + if (!isIndirect()) { + this->obj->reset(); + } +} + qpdf_object_type_e QPDFObjectHandle::getTypeCode() { |