From: Stefan Csomor Date: Wed, 2 Feb 2011 07:36:18 +0000 (+0000) Subject: guard against null ptr access X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/2f250cb6e607e3b0b9416883ac91958c9755c549 guard against null ptr access git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/list.h b/include/wx/list.h index a2ba1882f4..e6fd24d74b 100644 --- a/include/wx/list.h +++ b/include/wx/list.h @@ -819,9 +819,19 @@ private: reference_type operator*() const \ { return *(pointer_type)m_node->GetDataPtr(); } \ ptrop \ - itor& operator++() { m_node = m_node->GetNext(); return *this; }\ + itor& operator++() \ + { \ + if (m_node) \ + m_node = m_node->GetNext(); \ + return *this; \ + } \ const itor operator++(int) \ - { itor tmp = *this; m_node = m_node->GetNext(); return tmp; }\ + { \ + itor tmp = *this; \ + if (m_node) \ + m_node = m_node->GetNext(); \ + return tmp; \ + } \ itor& operator--() \ { \ m_node = m_node ? m_node->GetPrevious() : m_init; \ @@ -862,9 +872,19 @@ private: reference_type operator*() const \ { return *(pointer_type)m_node->GetDataPtr(); } \ ptrop \ - itor& operator++() { m_node = m_node->GetNext(); return *this; }\ + itor& operator++() \ + { \ + if (m_node) \ + m_node = m_node->GetNext(); \ + return *this; \ + } \ const itor operator++(int) \ - { itor tmp = *this; m_node = m_node->GetNext(); return tmp; }\ + { \ + itor tmp = *this; \ + if (m_node) \ + m_node = m_node->GetNext(); \ + return tmp; \ + } \ itor& operator--() \ { \ m_node = m_node ? m_node->GetPrevious() : m_init; \