aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDF_Array.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libqpdf/QPDF_Array.cc')
-rw-r--r--libqpdf/QPDF_Array.cc15
1 files changed, 7 insertions, 8 deletions
diff --git a/libqpdf/QPDF_Array.cc b/libqpdf/QPDF_Array.cc
index 7633266e..e4e1668e 100644
--- a/libqpdf/QPDF_Array.cc
+++ b/libqpdf/QPDF_Array.cc
@@ -267,17 +267,16 @@ QPDF_Array::push_back(QPDFObjectHandle const& item)
}
}
-void
-QPDF_Array::eraseItem(int at)
+bool
+QPDF_Array::erase(int at)
{
+ if (at < 0 || at >= size()) {
+ return false;
+ }
if (sparse) {
sp_elements.erase(at);
} else {
- size_t idx = QIntC::to_size(at);
- if (idx >= elements.size()) {
- throw std::logic_error("bounds error erasing item from OHArray");
- }
- int n = int(idx);
- elements.erase(elements.cbegin() + n);
+ elements.erase(elements.cbegin() + at);
}
+ return true;
}