Remove dead code in RenderPageImpl() callees

RenderPageImpl() calls into CPDF_AnnotList and CPDF_ProgressiveRenderer
code. Since RenderPageImpl() always has a non-null CFX_RenderDevice and
CPDF_RenderContext, CHECK() for that in the callees and then remove code
that can never be reached.

Change-Id: I243cb2ebe77d77a27cdab9e8a363cb01995fd589
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/117453
Reviewed-by: Thomas Sepez <tsepez@google.com>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fpdfapi/render/cpdf_progressiverenderer.cpp b/core/fpdfapi/render/cpdf_progressiverenderer.cpp
index 77823b0..5d88b84 100644
--- a/core/fpdfapi/render/cpdf_progressiverenderer.cpp
+++ b/core/fpdfapi/render/cpdf_progressiverenderer.cpp
@@ -13,6 +13,7 @@
 #include "core/fpdfapi/page/cpdf_pageobjectholder.h"
 #include "core/fpdfapi/render/cpdf_renderoptions.h"
 #include "core/fpdfapi/render/cpdf_renderstatus.h"
+#include "core/fxcrt/check.h"
 #include "core/fxcrt/pauseindicator_iface.h"
 #include "core/fxge/cfx_renderdevice.h"
 
@@ -20,7 +21,10 @@
     CPDF_RenderContext* pContext,
     CFX_RenderDevice* pDevice,
     const CPDF_RenderOptions* pOptions)
-    : m_pContext(pContext), m_pDevice(pDevice), m_pOptions(pOptions) {}
+    : m_pContext(pContext), m_pDevice(pDevice), m_pOptions(pOptions) {
+  CHECK(m_pContext);
+  CHECK(m_pDevice);
+}
 
 CPDF_ProgressiveRenderer::~CPDF_ProgressiveRenderer() {
   if (m_pRenderStatus) {
@@ -30,7 +34,7 @@
 }
 
 void CPDF_ProgressiveRenderer::Start(PauseIndicatorIface* pPause) {
-  if (!m_pContext || !m_pDevice || m_Status != kReady) {
+  if (m_Status != kReady) {
     m_Status = kFailed;
     return;
   }
diff --git a/core/fpdfdoc/cpdf_annotlist.cpp b/core/fpdfdoc/cpdf_annotlist.cpp
index f662e54..5e76277 100644
--- a/core/fpdfdoc/cpdf_annotlist.cpp
+++ b/core/fpdfdoc/cpdf_annotlist.cpp
@@ -29,7 +29,7 @@
 #include "core/fpdfdoc/cpdf_formfield.h"
 #include "core/fpdfdoc/cpdf_generateap.h"
 #include "core/fpdfdoc/cpdf_interactiveform.h"
-#include "core/fxge/cfx_renderdevice.h"
+#include "core/fxcrt/check.h"
 
 namespace {
 
@@ -231,11 +231,11 @@
 }
 
 void CPDF_AnnotList::DisplayPass(CPDF_Page* pPage,
-                                 CFX_RenderDevice* pDevice,
                                  CPDF_RenderContext* pContext,
                                  bool bPrinting,
                                  const CFX_Matrix& mtMatrix,
                                  bool bWidgetPass) {
+  CHECK(pContext);
   for (const auto& pAnnot : m_AnnotList) {
     bool bWidget = pAnnot->GetSubtype() == CPDF_Annot::Subtype::WIDGET;
     if ((bWidgetPass && !bWidget) || (!bWidgetPass && bWidget))
@@ -251,23 +251,18 @@
     if (!bPrinting && (annot_flags & pdfium::annotation_flags::kNoView))
       continue;
 
-    if (pContext) {
-      pAnnot->DrawInContext(pPage, pContext, mtMatrix,
-                            CPDF_Annot::AppearanceMode::kNormal);
-    } else if (!pAnnot->DrawAppearance(pPage, pDevice, mtMatrix,
-                                       CPDF_Annot::AppearanceMode::kNormal)) {
-      pAnnot->DrawBorder(pDevice, &mtMatrix);
-    }
+    pAnnot->DrawInContext(pPage, pContext, mtMatrix,
+                          CPDF_Annot::AppearanceMode::kNormal);
   }
 }
 
 void CPDF_AnnotList::DisplayAnnots(CPDF_Page* pPage,
-                                   CFX_RenderDevice* pDevice,
                                    CPDF_RenderContext* pContext,
                                    bool bPrinting,
                                    const CFX_Matrix& mtUser2Device,
                                    bool bShowWidget) {
-  DisplayPass(pPage, pDevice, pContext, bPrinting, mtUser2Device, false);
+  CHECK(pContext);
+  DisplayPass(pPage, pContext, bPrinting, mtUser2Device, false);
   if (bShowWidget)
-    DisplayPass(pPage, pDevice, pContext, bPrinting, mtUser2Device, true);
+    DisplayPass(pPage, pContext, bPrinting, mtUser2Device, true);
 }
diff --git a/core/fpdfdoc/cpdf_annotlist.h b/core/fpdfdoc/cpdf_annotlist.h
index ff98c8a..c6da73f 100644
--- a/core/fpdfdoc/cpdf_annotlist.h
+++ b/core/fpdfdoc/cpdf_annotlist.h
@@ -17,7 +17,6 @@
 #include "core/fxcrt/fx_coordinates.h"
 #include "core/fxcrt/unowned_ptr.h"
 
-class CFX_RenderDevice;
 class CPDF_Annot;
 class CPDF_Document;
 class CPDF_Page;
@@ -29,7 +28,6 @@
   ~CPDF_AnnotList() override;
 
   void DisplayAnnots(CPDF_Page* pPage,
-                     CFX_RenderDevice* pDevice,
                      CPDF_RenderContext* pContext,
                      bool bPrinting,
                      const CFX_Matrix& mtUser2Device,
@@ -41,7 +39,6 @@
 
  private:
   void DisplayPass(CPDF_Page* pPage,
-                   CFX_RenderDevice* pDevice,
                    CPDF_RenderContext* pContext,
                    bool bPrinting,
                    const CFX_Matrix& mtMatrix,
diff --git a/fpdfsdk/cpdfsdk_renderpage.cpp b/fpdfsdk/cpdfsdk_renderpage.cpp
index 757aa1f..eebbb26 100644
--- a/fpdfsdk/cpdfsdk_renderpage.cpp
+++ b/fpdfsdk/cpdfsdk_renderpage.cpp
@@ -74,8 +74,7 @@
 
     // TODO(https://crbug.com/pdfium/993) - maybe pass true here.
     const bool bShowWidget = false;
-    pList->DisplayAnnots(pPage, pContext->m_pDevice.get(),
-                         pContext->m_pContext.get(), bPrinting, matrix,
+    pList->DisplayAnnots(pPage, pContext->m_pContext.get(), bPrinting, matrix,
                          bShowWidget);
   }