Use CPDFSDK_Document::FromFPDFFormHandle in ::FORM_DoPageAAction

... rather then doing c-style type cast.

CL also tweaks the method body a bit to have more early-returns
rather than too-nested-if blocks.

No behavior change is expected, so no new tests are being added.

Review-Url: https://codereview.chromium.org/2230983003
diff --git a/fpdfsdk/fpdfformfill.cpp b/fpdfsdk/fpdfformfill.cpp
index 2530917..8d5b4b7 100644
--- a/fpdfsdk/fpdfformfill.cpp
+++ b/fpdfsdk/fpdfformfill.cpp
@@ -704,26 +704,32 @@
                                           int aaType) {
   if (!hHandle)
     return;
-  CPDFSDK_Document* pSDKDoc = ((CPDFDoc_Environment*)hHandle)->GetSDKDocument();
+
+  CPDFSDK_Document* pSDKDoc = CPDFSDK_Document::FromFPDFFormHandle(hHandle);
+  if (!pSDKDoc)
+    return;
+
   UnderlyingPageType* pPage = UnderlyingFromFPDFPage(page);
   CPDF_Page* pPDFPage = CPDFPageFromFPDFPage(page);
   if (!pPDFPage)
     return;
-  if (pSDKDoc->GetPageView(pPage, false)) {
-    CPDFDoc_Environment* pEnv = pSDKDoc->GetEnv();
-    CPDFSDK_ActionHandler* pActionHandler = pEnv->GetActionHander();
-    CPDF_Dictionary* pPageDict = pPDFPage->m_pFormDict;
-    CPDF_AAction aa(pPageDict->GetDictBy("AA"));
-    if (FPDFPAGE_AACTION_OPEN == aaType) {
-      if (aa.ActionExist(CPDF_AAction::OpenPage)) {
-        CPDF_Action action = aa.GetAction(CPDF_AAction::OpenPage);
-        pActionHandler->DoAction_Page(action, CPDF_AAction::OpenPage, pSDKDoc);
-      }
-    } else {
-      if (aa.ActionExist(CPDF_AAction::ClosePage)) {
-        CPDF_Action action = aa.GetAction(CPDF_AAction::ClosePage);
-        pActionHandler->DoAction_Page(action, CPDF_AAction::ClosePage, pSDKDoc);
-      }
+
+  if (!pSDKDoc->GetPageView(pPage, false))
+    return;
+
+  CPDFDoc_Environment* pEnv = pSDKDoc->GetEnv();
+  CPDFSDK_ActionHandler* pActionHandler = pEnv->GetActionHander();
+  CPDF_Dictionary* pPageDict = pPDFPage->m_pFormDict;
+  CPDF_AAction aa(pPageDict->GetDictBy("AA"));
+  if (FPDFPAGE_AACTION_OPEN == aaType) {
+    if (aa.ActionExist(CPDF_AAction::OpenPage)) {
+      CPDF_Action action = aa.GetAction(CPDF_AAction::OpenPage);
+      pActionHandler->DoAction_Page(action, CPDF_AAction::OpenPage, pSDKDoc);
+    }
+  } else {
+    if (aa.ActionExist(CPDF_AAction::ClosePage)) {
+      CPDF_Action action = aa.GetAction(CPDF_AAction::ClosePage);
+      pActionHandler->DoAction_Page(action, CPDF_AAction::ClosePage, pSDKDoc);
     }
   }
 }