From bb51c4fb6bc6095984c303c95e5336f83e66bc67 Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Wed, 14 Oct 2015 16:34:46 -0700 Subject: Introduce CPDF_Document::FromFPDFDocument(). This will be used to abstract one major difference between master and XFA, namely that the CPDF_Document is not a direct cast in XFA. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1395493007 . --- fpdfsdk/src/fpdfeditpage.cpp | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) (limited to 'fpdfsdk/src/fpdfeditpage.cpp') diff --git a/fpdfsdk/src/fpdfeditpage.cpp b/fpdfsdk/src/fpdfeditpage.cpp index 8796d0e2b1..574fa399c5 100644 --- a/fpdfsdk/src/fpdfeditpage.cpp +++ b/fpdfsdk/src/fpdfeditpage.cpp @@ -44,10 +44,8 @@ DLLEXPORT FPDF_DOCUMENT STDCALL FPDF_CreateNewDocument() { } DLLEXPORT void STDCALL FPDFPage_Delete(FPDF_DOCUMENT document, int page_index) { - CPDF_Document* pDoc = (CPDF_Document*)document; - if (pDoc == NULL) - return; - if (page_index < 0 || page_index >= pDoc->GetPageCount()) + CPDF_Document* pDoc = CPDF_Document::FromFPDFDocument(document); + if (!pDoc || page_index < 0 || page_index >= pDoc->GetPageCount()) return; pDoc->DeletePage(page_index); @@ -57,17 +55,14 @@ DLLEXPORT FPDF_PAGE STDCALL FPDFPage_New(FPDF_DOCUMENT document, int page_index, double width, double height) { - if (!document) - return NULL; + CPDF_Document* pDoc = CPDF_Document::FromFPDFDocument(document); + if (!pDoc) + return nullptr; - // CPDF_Parser* pParser = (CPDF_Parser*)document; - CPDF_Document* pDoc = (CPDF_Document*)document; if (page_index < 0) page_index = 0; if (pDoc->GetPageCount() < page_index) page_index = pDoc->GetPageCount(); - // if (page_index < 0 || page_index >= pDoc->GetPageCount()) - // return NULL; CPDF_Dictionary* pPageDict = pDoc->CreateNewPage(page_index); if (!pPageDict) -- cgit v1.2.3