aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDF_pages.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libqpdf/QPDF_pages.cc')
-rw-r--r--libqpdf/QPDF_pages.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/libqpdf/QPDF_pages.cc b/libqpdf/QPDF_pages.cc
index 818215c4..ddb672a1 100644
--- a/libqpdf/QPDF_pages.cc
+++ b/libqpdf/QPDF_pages.cc
@@ -89,6 +89,7 @@ QPDF::updateAllPagesCache()
QTC::TC("qpdf", "QPDF updateAllPagesCache");
this->all_pages.clear();
this->pageobj_to_pages_pos.clear();
+ this->pushed_inherited_attributes_to_pages = false;
getAllPages();
}
@@ -161,6 +162,12 @@ QPDF::insertPage(QPDFObjectHandle newpage, int pos)
QTC::TC("qpdf", "QPDF insert non-indirect page");
newpage = this->makeIndirectObject(newpage);
}
+ else if (newpage.getOwningQPDF() != this)
+ {
+ QTC::TC("qpdf", "QPDF insert foreign page");
+ newpage.getOwningQPDF()->pushInheritedAttributesToPage();
+ newpage = this->copyForeignObject(newpage, true);
+ }
else
{
QTC::TC("qpdf", "QPDF insert indirect page");