From: Vadim Zeitlin Date: Thu, 22 Nov 2001 21:14:41 +0000 (+0000) Subject: added check for NULL Clone() return X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/7a5c8ac45abec3ae8311c227523bae0c12f128bc added check for NULL Clone() return git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/common/event.cpp b/src/common/event.cpp index 5e618cc09f..914df70855 100644 --- a/src/common/event.cpp +++ b/src/common/event.cpp @@ -629,6 +629,13 @@ void wxEvtHandler::AddPendingEvent(wxEvent& event) { // 1) Add event to list of pending events of this event handler + wxEvent *eventCopy = event.Clone(); + + // we must be able to copy the events here so the event class must + // implement Clone() properly instead of just providing a NULL stab for it + wxCHECK_RET( eventCopy, + _T("events of this type aren't supposed to be posted") ); + #if defined(__VISAGECPP__) wxENTER_CRIT_SECT( m_eventsLocker); #else @@ -638,9 +645,7 @@ void wxEvtHandler::AddPendingEvent(wxEvent& event) if ( !m_pendingEvents ) m_pendingEvents = new wxList; - wxEvent *event2 = event.Clone(); - - m_pendingEvents->Append(event2); + m_pendingEvents->Append(eventCopy); #if defined(__VISAGECPP__) wxLEAVE_CRIT_SECT( m_eventsLocker);