summaryrefslogtreecommitdiff
path: root/core/fpdfapi/fpdf_parser/cpdf_document.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/fpdf_parser/cpdf_document.cpp')
-rw-r--r--core/fpdfapi/fpdf_parser/cpdf_document.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/core/fpdfapi/fpdf_parser/cpdf_document.cpp b/core/fpdfapi/fpdf_parser/cpdf_document.cpp
index 79965a23bb..230b9b0d1b 100644
--- a/core/fpdfapi/fpdf_parser/cpdf_document.cpp
+++ b/core/fpdfapi/fpdf_parser/cpdf_document.cpp
@@ -719,9 +719,16 @@ int CPDF_Document::RetrievePageCount() const {
return CountPages(pPages, &visited_pages);
}
-uint32_t CPDF_Document::GetUserPermissions(FX_BOOL bCheckRevision) const {
- return m_pParser ? m_pParser->GetPermissions(bCheckRevision)
- : static_cast<uint32_t>(-1);
+uint32_t CPDF_Document::GetUserPermissions() const {
+ // https://bugs.chromium.org/p/pdfium/issues/detail?id=499
+ if (!m_pParser) {
+#ifndef PDF_ENABLE_XFA
+ return 0;
+#else // PDF_ENABLE_XFA
+ return 0xFFFFFFFF;
+#endif
+ }
+ return m_pParser->GetPermissions();
}
FX_BOOL CPDF_Document::IsFormStream(uint32_t objnum, FX_BOOL& bForm) const {