CPDF_PageObjects::~CPDF_PageObjects() { if (m_pParser) { delete m_pParser; } if (!m_bReleaseMembers) { return; } FX_POSITION pos = m_ObjectList.GetHeadPosition(); while (pos) { CPDF_PageObject* pPageObj = (CPDF_PageObject*)m_ObjectList.GetNext(pos); if (!pPageObj) { continue; } pPageObj->Release(); } }
void CPDF_PageObjects::ClearCacheObjects() { m_ParseState = PDF_CONTENT_NOT_PARSED; if (m_pParser) { delete m_pParser; } m_pParser = NULL; if (m_bReleaseMembers) { FX_POSITION pos = m_ObjectList.GetHeadPosition(); while (pos) { CPDF_PageObject* pPageObj = (CPDF_PageObject*)m_ObjectList.GetNext(pos); if (!pPageObj) { continue; } pPageObj->Release(); } } m_ObjectList.RemoveAll(); }