// iterate until the list becomes empty
wxList::compatibility_iterator node = wxPendingEvents->GetFirst();
+
+ while (node &&
+ ((wxEvtHandler *)node->GetData())->IsEventHandlingInProgress() &&
+ ((wxEvtHandler *)node->GetData())->IsReentranceAllowed() == false)
+ {
+ // skip over event
+ node = node->GetNext();
+ }
+
while (node)
{
wxEvtHandler *handler = (wxEvtHandler *)node->GetData();
wxENTER_CRIT_SECT( *wxPendingEventsLocker );
node = wxPendingEvents->GetFirst();
+
+ while (node &&
+ ((wxEvtHandler *)node->GetData())->IsEventHandlingInProgress() &&
+ ((wxEvtHandler *)node->GetData())->IsReentranceAllowed() == false)
+ {
+ // skip over event
+ node = node->GetNext();
+ }
}
wxLEAVE_CRIT_SECT( *wxPendingEventsLocker );