diff options
Diffstat (limited to 'libqpdf')
-rw-r--r-- | libqpdf/QPDFAcroFormDocumentHelper.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libqpdf/QPDFAcroFormDocumentHelper.cc b/libqpdf/QPDFAcroFormDocumentHelper.cc index 9f800a8e..cf3cb161 100644 --- a/libqpdf/QPDFAcroFormDocumentHelper.cc +++ b/libqpdf/QPDFAcroFormDocumentHelper.cc @@ -35,7 +35,6 @@ QPDFAcroFormDocumentHelper::hasAcroForm() void QPDFAcroFormDocumentHelper::addFormField(QPDFFormFieldObjectHelper ff) { - invalidateCache(); auto acroform = this->qpdf.getRoot().getKey("/AcroForm"); if (! acroform.isDictionary()) { @@ -50,6 +49,9 @@ QPDFAcroFormDocumentHelper::addFormField(QPDFFormFieldObjectHelper ff) acroform.replaceKey("/Fields", fields); } fields.appendItem(ff.getObjectHandle()); + std::set<QPDFObjGen> visited; + traverseField( + ff.getObjectHandle(), QPDFObjectHandle::newNull(), 0, visited); } std::vector<QPDFFormFieldObjectHelper> |