From 27ddf161579f79510b361d0016ccc7f0cdffdc6d Mon Sep 17 00:00:00 2001 From: thestig Date: Mon, 23 May 2016 15:06:59 -0700 Subject: Distinguish between user and owner passwords. BUG=pdfium:496 Review-Url: https://codereview.chromium.org/2005653002 --- core/fpdfapi/fpdf_parser/cpdf_document.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'core/fpdfapi/fpdf_parser/cpdf_document.cpp') 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(-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 { -- cgit v1.2.3