summaryrefslogtreecommitdiff
path: root/core/fpdfapi/page/cpdf_page.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/page/cpdf_page.cpp')
-rw-r--r--core/fpdfapi/page/cpdf_page.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/core/fpdfapi/page/cpdf_page.cpp b/core/fpdfapi/page/cpdf_page.cpp
index ba93f4a7d3..0c8d63de71 100644
--- a/core/fpdfapi/page/cpdf_page.cpp
+++ b/core/fpdfapi/page/cpdf_page.cpp
@@ -180,6 +180,20 @@ int CPDF_Page::GetPageRotation() const {
return (rotate < 0) ? (rotate + 4) : rotate;
}
+bool CPDF_Page::RemoveObject(CPDF_PageObject* pPageObj) {
+ pdfium::FakeUniquePtr<CPDF_PageObject> p(pPageObj);
+
+ auto* pPageObjectList = GetPageObjectList();
+ auto it =
+ std::find(std::begin(*pPageObjectList), std::end(*pPageObjectList), p);
+ if (it == std::end(*pPageObjectList))
+ return false;
+
+ it->release();
+ pPageObjectList->erase(it);
+ return true;
+}
+
bool GraphicsData::operator<(const GraphicsData& other) const {
if (fillAlpha != other.fillAlpha)
return fillAlpha < other.fillAlpha;