summaryrefslogtreecommitdiff
path: root/core/fpdfapi/fpdf_parser/cpdf_document.cpp
diff options
context:
space:
mode:
authorthestig <thestig@chromium.org>2016-05-23 15:06:59 -0700
committerCommit bot <commit-bot@chromium.org>2016-05-23 15:06:59 -0700
commit27ddf161579f79510b361d0016ccc7f0cdffdc6d (patch)
treebc5a13661d288faeccc8471275059a9d5e8795bc /core/fpdfapi/fpdf_parser/cpdf_document.cpp
parent490d6128e6faef423fa6f965f792513e138bc04a (diff)
downloadpdfium-27ddf161579f79510b361d0016ccc7f0cdffdc6d.tar.xz
Distinguish between user and owner passwords.
BUG=pdfium:496 Review-Url: https://codereview.chromium.org/2005653002
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 {