Fix incorrect CPDFSDK_PageView::CountAnnots().
[pdfium.git] / core / src / fpdftext / fpdf_text_int.cpp
index 906554d..9ab09e1 100644 (file)
@@ -1286,10 +1286,9 @@ int32_t CPDF_TextPage::PreMarkedContent(PDFTEXT_Obj Obj) {
   for (n = 0; n < nContentMark; n++) {
     CPDF_ContentMarkItem& item = pMarkData->GetItem(n);
     CFX_ByteString tagStr = (CFX_ByteString)item.GetName();
-    pDict = (CPDF_Dictionary*)item.GetParam();
+    pDict = ToDictionary(static_cast<CPDF_Object*>(item.GetParam()));
     CPDF_String* temp =
-        (CPDF_String*)(pDict ? pDict->GetElement(FX_BSTRC("ActualText"))
-                             : NULL);
+        ToString(pDict ? pDict->GetElement(FX_BSTRC("ActualText")) : nullptr);
     if (temp) {
       bExist = TRUE;
       actText = temp->GetUnicodeText();
@@ -1357,10 +1356,9 @@ void CPDF_TextPage::ProcessMarkedContent(PDFTEXT_Obj Obj) {
   for (n = 0; n < nContentMark; n++) {
     CPDF_ContentMarkItem& item = pMarkData->GetItem(n);
     CFX_ByteString tagStr = (CFX_ByteString)item.GetName();
-    pDict = (CPDF_Dictionary*)item.GetParam();
+    pDict = ToDictionary(static_cast<CPDF_Object*>(item.GetParam()));
     CPDF_String* temp =
-        (CPDF_String*)(pDict ? pDict->GetElement(FX_BSTRC("ActualText"))
-                             : NULL);
+        ToString(pDict ? pDict->GetElement(FX_BSTRC("ActualText")) : nullptr);
     if (temp) {
       actText = temp->GetUnicodeText();
     }