| Index: fpdfsdk/src/fpdfdoc.cpp
|
| diff --git a/fpdfsdk/src/fpdfdoc.cpp b/fpdfsdk/src/fpdfdoc.cpp
|
| index d4b6b08ff338415a945ac960008d4a90272790ad..d1b71ac2bc61fa15db48d3a680482958806de878 100644
|
| --- a/fpdfsdk/src/fpdfdoc.cpp
|
| +++ b/fpdfsdk/src/fpdfdoc.cpp
|
| @@ -203,8 +203,7 @@ DLLEXPORT unsigned long STDCALL FPDFDest_GetPageIndex(FPDF_DOCUMENT document,
|
|
|
| DLLEXPORT FPDF_LINK STDCALL
|
| FPDFLink_GetLinkAtPoint(FPDF_PAGE page, double x, double y) {
|
| - CPDFXFA_Page* pXFAPage = (CPDFXFA_Page*)page;
|
| - CPDF_Page* pPage = pXFAPage->GetPDFPage();
|
| + CPDF_Page* pPage = CPDFPageFromFPDFPage(page);
|
| if (!pPage)
|
| return nullptr;
|
|
|
| @@ -218,8 +217,7 @@ FPDFLink_GetLinkAtPoint(FPDF_PAGE page, double x, double y) {
|
|
|
| DLLEXPORT int STDCALL
|
| FPDFLink_GetLinkZOrderAtPoint(FPDF_PAGE page, double x, double y) {
|
| - CPDFXFA_Page* pXFAPage = (CPDFXFA_Page*)page;
|
| - CPDF_Page* pPage = pXFAPage->GetPDFPage();
|
| + CPDF_Page* pPage = CPDFPageFromFPDFPage(page);
|
| if (!pPage)
|
| return -1;
|
|
|
| @@ -261,10 +259,10 @@ DLLEXPORT FPDF_ACTION STDCALL FPDFLink_GetAction(FPDF_LINK pDict) {
|
| DLLEXPORT FPDF_BOOL STDCALL FPDFLink_Enumerate(FPDF_PAGE page,
|
| int* startPos,
|
| FPDF_LINK* linkAnnot) {
|
| - if (!page || !startPos || !linkAnnot)
|
| + if (!startPos || !linkAnnot)
|
| return FALSE;
|
| - CPDF_Page* pPage = ((CPDFXFA_Page*)page)->GetPDFPage();
|
| - if (!pPage->m_pFormDict)
|
| + CPDF_Page* pPage = CPDFPageFromFPDFPage(page);
|
| + if (!pPage || !pPage->m_pFormDict)
|
| return FALSE;
|
| CPDF_Array* pAnnots = pPage->m_pFormDict->GetArray("Annots");
|
| if (!pAnnots)
|
|
|