CPDFDoc_Environment::GetAnnotHandlerMgr() never returns nullptr.
[pdfium.git] / fpdfsdk / src / fpdfeditpage.cpp
index f2d13d6..24a46a7 100644 (file)
@@ -40,7 +40,7 @@ DLLEXPORT FPDF_DOCUMENT STDCALL FPDF_CreateNewDocument() {
     pInfoDict->SetAt("Creator", new CPDF_String(L"PDFium"));
   }
 
-  return pDoc;
+  return FPDFDocumentFromCPDFDocument(pDoc);
 }
 
 DLLEXPORT void STDCALL FPDFPage_Delete(FPDF_DOCUMENT document, int page_index) {
@@ -103,7 +103,7 @@ DLLEXPORT int STDCALL FPDFPage_GetRotation(FPDF_PAGE page) {
     else {
       if (pDict->KeyExist("Parent")) {
         CPDF_Dictionary* pPages =
-            (CPDF_Dictionary*)pDict->GetElement("Parent")->GetDirect();
+            ToDictionary(pDict->GetElement("Parent")->GetDirect());
         while (pPages) {
           if (pPages->KeyExist("Rotate")) {
             rotate =
@@ -113,8 +113,7 @@ DLLEXPORT int STDCALL FPDFPage_GetRotation(FPDF_PAGE page) {
                     : 0;
             break;
           } else if (pPages->KeyExist("Parent"))
-            pPages =
-                (CPDF_Dictionary*)pPages->GetElement("Parent")->GetDirect();
+            pPages = ToDictionary(pPages->GetElement("Parent")->GetDirect());
           else
             break;
         }
@@ -213,7 +212,7 @@ FPDFPageObj_HasTransparency(FPDF_PAGEOBJECT pageObject) {
     return TRUE;
 
   CPDF_Dictionary* pSMaskDict =
-      pGeneralState ? (CPDF_Dictionary*)pGeneralState->m_pSoftMask : NULL;
+      pGeneralState ? ToDictionary(pGeneralState->m_pSoftMask) : NULL;
   if (pSMaskDict)
     return TRUE;