diff options
author | Tom Sepez <tsepez@chromium.org> | 2018-06-01 20:43:53 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-06-01 20:43:53 +0000 |
commit | 0b4984ca4ed82023cd945512df5744eac394b53d (patch) | |
tree | bb273a466c953703961daccc5cb8b86ef1817ed8 | |
parent | ee0fffe57e04041ba092a860418e5d4cfcbfd999 (diff) | |
download | pdfium-0b4984ca4ed82023cd945512df5744eac394b53d.tar.xz |
Make FPDF_LoadPage return either page type at runtime.
Rely on strict use of IPDF_Page::As*() methods to prevent bad downcasts.
Change-Id: I92a146ffbe5d145ca4f4a5b8318f3599fd1d8431
Reviewed-on: https://pdfium-review.googlesource.com/33431
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
-rw-r--r-- | fpdfsdk/fpdf_view.cpp | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/fpdfsdk/fpdf_view.cpp b/fpdfsdk/fpdf_view.cpp index f0ceb1f378..91072d2f51 100644 --- a/fpdfsdk/fpdf_view.cpp +++ b/fpdfsdk/fpdf_view.cpp @@ -352,17 +352,14 @@ FPDF_EXPORT FPDF_PAGE FPDF_CALLCONV FPDF_LoadPage(FPDF_DOCUMENT document, auto* pContext = static_cast<CPDFXFA_Context*>(pDoc->GetExtension()); if (pContext) return FPDFPageFromIPDFPage(pContext->GetXFAPage(page_index).Leak()); +#endif // PDF_ENABLE_XFA - // Eventually, fallthrough into non-xfa case once page type made consistent. - return nullptr; -#else // PDF_ENABLE_XFA CPDF_Dictionary* pDict = pDoc->GetPageDictionary(page_index); if (!pDict) return nullptr; RetainPtr<CPDF_Page> pPage = pDoc->GetOrCreatePDFPage(pDict); return FPDFPageFromIPDFPage(pPage.Leak()); -#endif // PDF_ENABLE_XFA } FPDF_EXPORT double FPDF_CALLCONV FPDF_GetPageWidth(FPDF_PAGE page) { |