diff options
Diffstat (limited to 'fpdfsdk')
-rw-r--r-- | fpdfsdk/cpdfsdk_formfillenvironment.cpp | 7 | ||||
-rw-r--r-- | fpdfsdk/fpdfxfa/cpdfxfa_context.cpp | 5 | ||||
-rw-r--r-- | fpdfsdk/fpdfxfa/cpdfxfa_context.h | 1 |
3 files changed, 8 insertions, 5 deletions
diff --git a/fpdfsdk/cpdfsdk_formfillenvironment.cpp b/fpdfsdk/cpdfsdk_formfillenvironment.cpp index 49a4a601d5..a0859a225a 100644 --- a/fpdfsdk/cpdfsdk_formfillenvironment.cpp +++ b/fpdfsdk/cpdfsdk_formfillenvironment.cpp @@ -719,11 +719,8 @@ CPDFXFA_Context* CPDFSDK_FormFillEnvironment::GetXFAContext() const { #endif // PDF_ENABLE_XFA int CPDFSDK_FormFillEnvironment::GetPageCount() const { -#ifdef PDF_ENABLE_XFA - return GetXFAContext()->GetPageCount(); -#else - return m_pCPDFDoc->GetPageCount(); -#endif + CPDF_Document::Extension* pExtension = m_pCPDFDoc->GetExtension(); + return pExtension ? pExtension->GetPageCount() : m_pCPDFDoc->GetPageCount(); } bool CPDFSDK_FormFillEnvironment::GetPermissions(int nFlag) const { diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp index 84fcb37d16..3b10f0d51e 100644 --- a/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp +++ b/fpdfsdk/fpdfxfa/cpdfxfa_context.cpp @@ -203,6 +203,11 @@ void CPDFXFA_Context::DeletePage(int page_index) { m_XFAPageList[page_index].Reset(); } +uint32_t CPDFXFA_Context::GetUserPermissions() const { + // See https://bugs.chromium.org/p/pdfium/issues/detail?id=499 + return 0xFFFFFFFF; +} + void CPDFXFA_Context::ClearChangeMark() { if (m_pFormFillEnv) m_pFormFillEnv->ClearChangeMark(); diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_context.h b/fpdfsdk/fpdfxfa/cpdfxfa_context.h index c7fe02d8fb..a01990cce4 100644 --- a/fpdfsdk/fpdfxfa/cpdfxfa_context.h +++ b/fpdfsdk/fpdfxfa/cpdfxfa_context.h @@ -62,6 +62,7 @@ class CPDFXFA_Context : public CPDF_Document::Extension, CPDF_Document* GetPDFDoc() const override; int GetPageCount() const override; void DeletePage(int page_index) override; + uint32_t GetUserPermissions() const override; // IFXA_AppProvider: WideString GetLanguage() override; |