summaryrefslogtreecommitdiff
path: root/fpdfsdk/fpdfxfa
diff options
context:
space:
mode:
Diffstat (limited to 'fpdfsdk/fpdfxfa')
-rw-r--r--fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp7
-rw-r--r--fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h5
2 files changed, 5 insertions, 7 deletions
diff --git a/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp b/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp
index 8db16bf4e9..2d74c02d23 100644
--- a/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp
+++ b/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp
@@ -191,11 +191,8 @@ void CPDFXFA_Document::RemovePage(CPDFXFA_Page* page) {
m_XFAPageList.SetAt(page->GetPageIndex(), nullptr);
}
-CPDFSDK_Document* CPDFXFA_Document::GetSDKDocument(
- CPDFSDK_Environment* pFormFillEnv) {
- if (!m_pSDKDoc && pFormFillEnv)
- m_pSDKDoc.reset(new CPDFSDK_Document(this, pFormFillEnv));
- return m_pSDKDoc.get();
+void CPDFXFA_Document::SetSDKDoc(std::unique_ptr<CPDFSDK_Document> pSDKDoc) {
+ m_pSDKDoc.reset(pSDKDoc.release());
}
void CPDFXFA_Document::ClearChangeMark() {
diff --git a/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h b/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h
index ed788eac55..5398c57519 100644
--- a/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h
+++ b/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h
@@ -38,9 +38,11 @@ class CPDFXFA_Document {
CPDF_Document* GetPDFDoc() { return m_pPDFDoc.get(); }
CXFA_FFDoc* GetXFADoc() { return m_pXFADoc.get(); }
CXFA_FFDocView* GetXFADocView() { return m_pXFADocView; }
- CPDFSDK_Document* GetSDKDocument(CPDFSDK_Environment* pFormFillEnv);
int GetDocType() const { return m_iDocType; }
+ CPDFSDK_Document* GetSDKDoc() const { return m_pSDKDoc.get(); }
+ void SetSDKDoc(std::unique_ptr<CPDFSDK_Document> pSDKDoc);
+
void DeletePage(int page_index);
int GetPageCount() const;
@@ -54,7 +56,6 @@ class CPDFXFA_Document {
protected:
friend class CPDFXFA_DocEnvironment;
- CPDFSDK_Document* GetSDKDoc() { return m_pSDKDoc.get(); }
int GetOriginalPageCount() const { return m_nPageCount; }
void SetOriginalPageCount(int count) {
m_nPageCount = count;