Merge to XFA: Make conversion between CPDF_Dest and its object explicit.
[pdfium.git] / fpdfsdk / src / fpdfdoc.cpp
index 9e4267f..e89a7aa 100644 (file)
@@ -86,12 +86,12 @@ DLLEXPORT FPDF_DEST STDCALL FPDFBookmark_GetDest(FPDF_DOCUMENT document, FPDF_BO
        CPDF_Document* pDoc = ((CPDFXFA_Document*)document)->GetPDFDoc();
        CPDF_Dest dest = bookmark.GetDest(pDoc);
        if (dest)
-               return dest;
+               return dest.GetObject();
        // If this bookmark is not directly associated with a dest, we try to get action
        CPDF_Action action = bookmark.GetAction();
        if (!action)
                return NULL;
-       return action.GetDest(pDoc);
+       return action.GetDest(pDoc).GetObject();
 }
 
 DLLEXPORT FPDF_ACTION STDCALL FPDFBookmark_GetAction(FPDF_BOOKMARK pDict)
@@ -131,7 +131,7 @@ DLLEXPORT FPDF_DEST STDCALL FPDFAction_GetDest(FPDF_DOCUMENT document, FPDF_ACTI
                return NULL;
        CPDF_Document* pDoc = ((CPDFXFA_Document*)document)->GetPDFDoc();
        CPDF_Action action((CPDF_Dictionary*)pDict);
-       return action.GetDest(pDoc);
+       return action.GetDest(pDoc).GetObject();
 }
 
 DLLEXPORT unsigned long STDCALL FPDFAction_GetURIPath(FPDF_DOCUMENT document, FPDF_ACTION pDict,
@@ -157,7 +157,7 @@ DLLEXPORT unsigned long STDCALL FPDFDest_GetPageIndex(FPDF_DOCUMENT document, FP
        if (!pDict)
                return 0;
        CPDF_Document* pDoc = ((CPDFXFA_Document*)document)->GetPDFDoc();
-       CPDF_Dest dest = (CPDF_Array*)pDict;
+       CPDF_Dest dest((CPDF_Array*)pDict);
        return dest.GetPageIndex(pDoc);
 }
 
@@ -192,14 +192,14 @@ DLLEXPORT FPDF_DEST STDCALL FPDFLink_GetDest(FPDF_DOCUMENT document, FPDF_LINK p
                return NULL;
        CPDF_Link link = (CPDF_Dictionary*)pDict;
 
-       FPDF_DEST dest = link.GetDest(pDoc);
+       FPDF_DEST dest = link.GetDest(pDoc).GetObject();
        if (dest)
                return dest;
        // If this link is not directly associated with a dest, we try to get action
        CPDF_Action action = link.GetAction();
        if (!action)
                return NULL;
-       return action.GetDest(pDoc);
+       return action.GetDest(pDoc).GetObject();
 }
 
 DLLEXPORT FPDF_ACTION STDCALL FPDFLink_GetAction(FPDF_LINK pDict)