diff options
author | m-holger <m-holger@kubitscheck.org> | 2023-03-25 18:23:19 +0100 |
---|---|---|
committer | m-holger <m-holger@kubitscheck.org> | 2023-03-29 14:06:26 +0200 |
commit | 0db65e79120e66069a37906845a984457b711b6f (patch) | |
tree | 16f3aef82d28ff1c464ca2d0b3e39b90382b7b6c /libqpdf | |
parent | 1367226002d48bc0d67c08cae498fd92dad41977 (diff) | |
download | qpdf-0db65e79120e66069a37906845a984457b711b6f.tar.zst |
Remove temporary OHArray::disconnect and setAt
Diffstat (limited to 'libqpdf')
-rw-r--r-- | libqpdf/OHArray.cc | 20 | ||||
-rw-r--r-- | libqpdf/QPDF_Array.cc | 12 | ||||
-rw-r--r-- | libqpdf/qpdf/OHArray.hh | 2 |
3 files changed, 10 insertions, 24 deletions
diff --git a/libqpdf/OHArray.cc b/libqpdf/OHArray.cc index dc01421f..ce6a595e 100644 --- a/libqpdf/OHArray.cc +++ b/libqpdf/OHArray.cc @@ -12,26 +12,6 @@ OHArray::OHArray() } void -OHArray::disconnect() -{ - for (auto const& iter: elements) { - if (iter) { - QPDFObjectHandle oh = iter; - QPDFObjectHandle::DisconnectAccess::disconnect(oh); - } - } -} - -void -OHArray::setAt(size_t idx, QPDFObjectHandle oh) -{ - if (idx >= elements.size()) { - throw std::logic_error("bounds error setting item in OHArray"); - } - elements[idx] = oh.getObj(); -} - -void OHArray::erase(size_t idx) { if (idx >= elements.size()) { diff --git a/libqpdf/QPDF_Array.cc b/libqpdf/QPDF_Array.cc index b86c3f0a..ce08332a 100644 --- a/libqpdf/QPDF_Array.cc +++ b/libqpdf/QPDF_Array.cc @@ -77,7 +77,11 @@ QPDF_Array::disconnect() if (sparse) { sp_elements.disconnect(); } else { - elements.disconnect(); + for (auto const& iter: elements.elements) { + if (iter) { + QPDFObjectHandle::DisconnectAccess::disconnect(iter); + } + } } } @@ -176,7 +180,11 @@ QPDF_Array::setItem(int n, QPDFObjectHandle const& oh) if (sparse) { sp_elements.setAt(QIntC::to_size(n), oh); } else { - elements.setAt(QIntC::to_size(n), oh); + size_t idx = size_t(n); + if (n < 0 || idx >= elements.elements.size()) { + throw std::logic_error("bounds error setting item in QPDF_Array"); + } + elements.elements[idx] = oh.getObj(); } } diff --git a/libqpdf/qpdf/OHArray.hh b/libqpdf/qpdf/OHArray.hh index e8abc8b3..e4d880db 100644 --- a/libqpdf/qpdf/OHArray.hh +++ b/libqpdf/qpdf/OHArray.hh @@ -12,11 +12,9 @@ class OHArray { public: OHArray(); - void setAt(size_t idx, QPDFObjectHandle oh); void erase(size_t idx); void insert(size_t idx, QPDFObjectHandle oh); OHArray copy(); - void disconnect(); private: friend class QPDF_Array; |