Index: core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp |
diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp |
index 04aca910822152e77ad6b8b4d445464abd78de25..f64ba0deb079aa28ce8827eca889e071a28783dc 100644 |
--- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp |
+++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp |
@@ -2693,10 +2693,10 @@ class CPDF_DataAvail final : public IPDF_DataAvail { |
static const int kMaxPageRecursionDepth = 1024; |
FX_DWORD GetObjectSize(FX_DWORD objnum, FX_FILESIZE& offset); |
- FX_BOOL IsObjectsAvail(CFX_PtrArray& obj_array, |
+ FX_BOOL IsObjectsAvail(CFX_ArrayTemplate<CPDF_Object*>& obj_array, |
FX_BOOL bParsePage, |
IFX_DownloadHints* pHints, |
- CFX_PtrArray& ret_array); |
+ CFX_ArrayTemplate<CPDF_Object*>& ret_array); |
FX_BOOL CheckDocStatus(IFX_DownloadHints* pHints); |
FX_BOOL CheckHeader(IFX_DownloadHints* pHints); |
FX_BOOL CheckFirstPage(IFX_DownloadHints* pHints); |
@@ -2795,7 +2795,7 @@ class CPDF_DataAvail final : public IPDF_DataAvail { |
CPDF_SortObjNumArray m_objnum_array; |
- CFX_PtrArray m_objs_array; |
+ CFX_ArrayTemplate<CPDF_Object*> m_objs_array; |
FX_FILESIZE m_Pos; |
@@ -2847,7 +2847,7 @@ class CPDF_DataAvail final : public IPDF_DataAvail { |
CPDF_Object* m_pAcroForm; |
- CFX_PtrArray m_arrayAcroforms; |
+ CFX_ArrayTemplate<CPDF_Object*> m_arrayAcroforms; |
CPDF_Dictionary* m_pPageDict; |
@@ -2859,7 +2859,7 @@ class CPDF_DataAvail final : public IPDF_DataAvail { |
FX_BOOL m_bLinearizedFormParamLoad; |
- CFX_PtrArray m_PagesArray; |
+ CFX_ArrayTemplate<CPDF_Object*> m_PagesArray; |
FX_DWORD m_dwEncryptObjNum; |
@@ -2954,7 +2954,7 @@ CPDF_DataAvail::~CPDF_DataAvail() { |
int iSize = m_arrayAcroforms.GetSize(); |
for (int i = 0; i < iSize; ++i) { |
- static_cast<CPDF_Object*>(m_arrayAcroforms.GetAt(i))->Release(); |
+ m_arrayAcroforms.GetAt(i)->Release(); |
} |
} |
void CPDF_DataAvail::SetDocument(CPDF_Document* pDoc) { |
@@ -2991,18 +2991,19 @@ FX_DWORD CPDF_DataAvail::GetObjectSize(FX_DWORD objnum, FX_FILESIZE& offset) { |
} |
return 0; |
} |
-FX_BOOL CPDF_DataAvail::IsObjectsAvail(CFX_PtrArray& obj_array, |
- FX_BOOL bParsePage, |
- IFX_DownloadHints* pHints, |
- CFX_PtrArray& ret_array) { |
+FX_BOOL CPDF_DataAvail::IsObjectsAvail( |
+ CFX_ArrayTemplate<CPDF_Object*>& obj_array, |
+ FX_BOOL bParsePage, |
+ IFX_DownloadHints* pHints, |
+ CFX_ArrayTemplate<CPDF_Object*>& ret_array) { |
if (!obj_array.GetSize()) { |
return TRUE; |
} |
FX_DWORD count = 0; |
- CFX_PtrArray new_obj_array; |
+ CFX_ArrayTemplate<CPDF_Object*> new_obj_array; |
int32_t i = 0; |
for (i = 0; i < obj_array.GetSize(); i++) { |
- CPDF_Object* pObj = static_cast<CPDF_Object*>(obj_array[i]); |
+ CPDF_Object* pObj = obj_array[i]; |
if (!pObj) |
continue; |
@@ -3056,7 +3057,7 @@ FX_BOOL CPDF_DataAvail::IsObjectsAvail(CFX_PtrArray& obj_array, |
if (count > 0) { |
int32_t iSize = new_obj_array.GetSize(); |
for (i = 0; i < iSize; ++i) { |
- CPDF_Object* pObj = static_cast<CPDF_Object*>(new_obj_array[i]); |
+ CPDF_Object* pObj = new_obj_array[i]; |
if (CPDF_Reference* pRef = pObj->AsReference()) { |
FX_DWORD dwNum = pRef->GetRefObjNum(); |
if (!m_objnum_array.Find(dwNum)) |
@@ -3092,7 +3093,7 @@ FX_BOOL CPDF_DataAvail::CheckAcroFormSubObject(IFX_DownloadHints* pHints) { |
if (!m_objs_array.GetSize()) { |
m_objs_array.RemoveAll(); |
m_objnum_array.RemoveAll(); |
- CFX_PtrArray obj_array; |
+ CFX_ArrayTemplate<CPDF_Object*> obj_array; |
obj_array.Append(m_arrayAcroforms); |
FX_BOOL bRet = IsObjectsAvail(obj_array, FALSE, pHints, m_objs_array); |
if (bRet) { |
@@ -3100,12 +3101,12 @@ FX_BOOL CPDF_DataAvail::CheckAcroFormSubObject(IFX_DownloadHints* pHints) { |
} |
return bRet; |
} |
- CFX_PtrArray new_objs_array; |
+ CFX_ArrayTemplate<CPDF_Object*> new_objs_array; |
FX_BOOL bRet = IsObjectsAvail(m_objs_array, FALSE, pHints, new_objs_array); |
if (bRet) { |
int32_t iSize = m_arrayAcroforms.GetSize(); |
for (int32_t i = 0; i < iSize; ++i) { |
- static_cast<CPDF_Object*>(m_arrayAcroforms.GetAt(i))->Release(); |
+ m_arrayAcroforms.GetAt(i)->Release(); |
} |
m_arrayAcroforms.RemoveAll(); |
} else { |
@@ -3391,14 +3392,14 @@ FX_BOOL CPDF_DataAvail::CheckPage(IFX_DownloadHints* pHints) { |
} |
FX_DWORD iPages = m_PagesArray.GetSize(); |
for (FX_DWORD i = 0; i < iPages; i++) { |
- CPDF_Object* pPages = static_cast<CPDF_Object*>(m_PagesArray.GetAt(i)); |
+ CPDF_Object* pPages = m_PagesArray.GetAt(i); |
if (!pPages) |
continue; |
if (!GetPageKids(m_pCurrentParser, pPages)) { |
pPages->Release(); |
while (++i < iPages) { |
- pPages = static_cast<CPDF_Object*>(m_PagesArray.GetAt(i)); |
+ pPages = m_PagesArray.GetAt(i); |
pPages->Release(); |
} |
m_PagesArray.RemoveAll(); |
@@ -4163,7 +4164,7 @@ FX_BOOL CPDF_DataAvail::CheckPageNode(CPDF_PageNode& pageNodes, |
return FALSE; |
} |
for (int32_t i = 0; i < iSize; ++i) { |
- CPDF_PageNode* pNode = (CPDF_PageNode*)pageNodes.m_childNode.GetAt(i); |
+ CPDF_PageNode* pNode = pageNodes.m_childNode.GetAt(i); |
if (!pNode) { |
continue; |
} |
@@ -4310,7 +4311,7 @@ FX_BOOL CPDF_DataAvail::CheckPageAnnots(int32_t iPage, |
if (!pAnnots) { |
return TRUE; |
} |
- CFX_PtrArray obj_array; |
+ CFX_ArrayTemplate<CPDF_Object*> obj_array; |
obj_array.Add(pAnnots); |
FX_BOOL bRet = IsObjectsAvail(obj_array, FALSE, pHints, m_objs_array); |
if (bRet) { |
@@ -4318,7 +4319,7 @@ FX_BOOL CPDF_DataAvail::CheckPageAnnots(int32_t iPage, |
} |
return bRet; |
} |
- CFX_PtrArray new_objs_array; |
+ CFX_ArrayTemplate<CPDF_Object*> new_objs_array; |
FX_BOOL bRet = IsObjectsAvail(m_objs_array, FALSE, pHints, new_objs_array); |
m_objs_array.RemoveAll(); |
if (!bRet) { |
@@ -4432,7 +4433,7 @@ int CPDF_DataAvail::IsPageAvail(int32_t iPage, IFX_DownloadHints* pHints) { |
ResetFirstCheck(iPage); |
return DataAvailable; |
} |
- CFX_PtrArray obj_array; |
+ CFX_ArrayTemplate<CPDF_Object*> obj_array; |
obj_array.Add(m_pPageDict); |
FX_BOOL bRet = IsObjectsAvail(obj_array, TRUE, pHints, m_objs_array); |
if (bRet) { |
@@ -4442,7 +4443,7 @@ int CPDF_DataAvail::IsPageAvail(int32_t iPage, IFX_DownloadHints* pHints) { |
return bRet; |
} |
} else { |
- CFX_PtrArray new_objs_array; |
+ CFX_ArrayTemplate<CPDF_Object*> new_objs_array; |
FX_BOOL bRet = |
IsObjectsAvail(m_objs_array, FALSE, pHints, new_objs_array); |
m_objs_array.RemoveAll(); |
@@ -4487,7 +4488,7 @@ int CPDF_DataAvail::IsPageAvail(int32_t iPage, IFX_DownloadHints* pHints) { |
FX_BOOL CPDF_DataAvail::CheckResources(IFX_DownloadHints* pHints) { |
if (!m_objs_array.GetSize()) { |
m_objs_array.RemoveAll(); |
- CFX_PtrArray obj_array; |
+ CFX_ArrayTemplate<CPDF_Object*> obj_array; |
obj_array.Add(m_pPageResource); |
FX_BOOL bRet = IsObjectsAvail(obj_array, TRUE, pHints, m_objs_array); |
if (bRet) { |
@@ -4495,7 +4496,7 @@ FX_BOOL CPDF_DataAvail::CheckResources(IFX_DownloadHints* pHints) { |
} |
return bRet; |
} |
- CFX_PtrArray new_objs_array; |
+ CFX_ArrayTemplate<CPDF_Object*> new_objs_array; |
FX_BOOL bRet = IsObjectsAvail(m_objs_array, FALSE, pHints, new_objs_array); |
m_objs_array.RemoveAll(); |
if (!bRet) { |
@@ -4570,7 +4571,7 @@ IPDF_DataAvail::DocFormStatus CPDF_DataAvail::IsFormAvail( |
} |
m_bLinearizedFormParamLoad = TRUE; |
} |
- CFX_PtrArray new_objs_array; |
+ CFX_ArrayTemplate<CPDF_Object*> new_objs_array; |
FX_BOOL bRet = IsObjectsAvail(m_objs_array, FALSE, pHints, new_objs_array); |
m_objs_array.RemoveAll(); |
if (!bRet) { |
@@ -4609,10 +4610,8 @@ FX_BOOL CPDF_SortObjNumArray::BinarySearch(FX_DWORD value, int32_t& iNext) { |
return FALSE; |
} |
CPDF_PageNode::~CPDF_PageNode() { |
- int32_t iSize = m_childNode.GetSize(); |
- for (int32_t i = 0; i < iSize; ++i) { |
- CPDF_PageNode* pNode = (CPDF_PageNode*)m_childNode[i]; |
- delete pNode; |
+ for (int32_t i = 0; i < m_childNode.GetSize(); ++i) { |
+ delete m_childNode[i]; |
} |
m_childNode.RemoveAll(); |
} |