| Index: core/fpdfapi/parser/cpdf_array.cpp
|
| diff --git a/core/fpdfapi/parser/cpdf_array.cpp b/core/fpdfapi/parser/cpdf_array.cpp
|
| index 4000bbc98088e3fecf7531f020a7093fd9fc54c9..e118fd66e6c2ff5892c1fae9c90d77f32851b009 100644
|
| --- a/core/fpdfapi/parser/cpdf_array.cpp
|
| +++ b/core/fpdfapi/parser/cpdf_array.cpp
|
| @@ -24,7 +24,7 @@
|
| m_ObjNum = kInvalidObjNum;
|
| for (auto& it : m_Objects) {
|
| if (it && it->GetObjNum() != kInvalidObjNum)
|
| - delete it;
|
| + it->Release();
|
| }
|
| }
|
|
|
| @@ -139,9 +139,10 @@
|
| if (nCount <= 0 || nCount > m_Objects.size() - i)
|
| return;
|
|
|
| - for (size_t j = 0; j < nCount; ++j)
|
| - delete m_Objects[i + j];
|
| -
|
| + for (size_t j = 0; j < nCount; ++j) {
|
| + if (CPDF_Object* p = m_Objects[i + j])
|
| + p->Release();
|
| + }
|
| m_Objects.erase(m_Objects.begin() + i, m_Objects.begin() + i + nCount);
|
| }
|
|
|
| @@ -165,7 +166,9 @@
|
| ASSERT(false);
|
| return;
|
| }
|
| - delete m_Objects[i];
|
| + if (CPDF_Object* pOld = m_Objects[i])
|
| + pOld->Release();
|
| +
|
| m_Objects[i] = pObj;
|
| }
|
|
|
|
|