diff options
author | m-holger <m-holger@kubitscheck.org> | 2023-03-29 17:39:34 +0200 |
---|---|---|
committer | m-holger <m-holger@kubitscheck.org> | 2023-04-01 14:57:15 +0200 |
commit | e186da17213826ae22b73584641d2e8cd10b24d5 (patch) | |
tree | 11ff4c74a32d03fafaa1abcb68ec85a890fa40d8 /libqpdf/QPDF_Array.cc | |
parent | 1c85e7ece4d832b114f91c1858ba2b24964d5d9e (diff) | |
download | qpdf-e186da17213826ae22b73584641d2e8cd10b24d5.tar.zst |
Remove SparseOHArray::at, setAt and append
Diffstat (limited to 'libqpdf/QPDF_Array.cc')
-rw-r--r-- | libqpdf/QPDF_Array.cc | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/libqpdf/QPDF_Array.cc b/libqpdf/QPDF_Array.cc index fbaf776f..3ed18bf4 100644 --- a/libqpdf/QPDF_Array.cc +++ b/libqpdf/QPDF_Array.cc @@ -193,7 +193,7 @@ QPDF_Array::setAt(int at, QPDFObjectHandle const& oh) } checkOwnership(oh); if (sparse) { - sp_elements.setAt(at, oh); + sp_elements.elements[at] = oh.getObj(); } else { elements[size_t(at)] = oh.getObj(); } @@ -206,7 +206,7 @@ QPDF_Array::setFromVector(std::vector<QPDFObjectHandle> const& v) if (sparse) { sp_elements = SparseOHArray(); for (auto const& iter: v) { - sp_elements.append(iter); + sp_elements.elements[sp_elements.n_elements++] = iter.getObj(); } } else { elements.resize(0); @@ -224,10 +224,9 @@ QPDF_Array::setFromVector(std::vector<std::shared_ptr<QPDFObject>>&& v) for (auto&& item: v) { if (item->getTypeCode() != ::ot_null || item->getObjGen().isIndirect()) { - sp_elements.append(std::move(item)); - } else { - ++sp_elements.n_elements; + sp_elements.elements[sp_elements.n_elements] = std::move(item); } + ++sp_elements.n_elements; } } else { elements = std::move(v); |