| Index: core/fxcrt/fx_basic_list.cpp
|
| diff --git a/core/fxcrt/fx_basic_list.cpp b/core/fxcrt/fx_basic_list.cpp
|
| index 02afd471124acc57734c9f4c389d9cf60f93498e..f128176d00a8e46ecc6cae3ae5680697919dcdb8 100644
|
| --- a/core/fxcrt/fx_basic_list.cpp
|
| +++ b/core/fxcrt/fx_basic_list.cpp
|
| @@ -73,12 +73,18 @@ void CFX_PtrList::FreeNode(CFX_PtrList::CNode* pNode) {
|
| RemoveAll();
|
| }
|
| }
|
| +
|
| void CFX_PtrList::RemoveAll() {
|
| m_nCount = 0;
|
| - m_pNodeHead = m_pNodeTail = m_pNodeFree = NULL;
|
| - m_pBlocks->FreeDataChain();
|
| - m_pBlocks = NULL;
|
| + m_pNodeHead = nullptr;
|
| + m_pNodeTail = nullptr;
|
| + m_pNodeFree = nullptr;
|
| + if (m_pBlocks) {
|
| + m_pBlocks->FreeDataChain();
|
| + m_pBlocks = nullptr;
|
| + }
|
| }
|
| +
|
| CFX_PtrList::CNode* CFX_PtrList::NewNode(CFX_PtrList::CNode* pPrev,
|
| CFX_PtrList::CNode* pNext) {
|
| if (!m_pNodeFree) {
|
|
|