]> git.saurik.com Git - wxWidgets.git/commitdiff
Process all pending events before starting to delete pending objects -
authorGuillermo Rodriguez Garcia <guille@iies.es>
Sun, 20 Feb 2000 01:04:34 +0000 (01:04 +0000)
committerGuillermo Rodriguez Garcia <guille@iies.es>
Sun, 20 Feb 2000 01:04:34 +0000 (01:04 +0000)
specially important for wxPostEvent to work OK.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/app.cpp

index cb05b27011235e7e5fd6beb5f5f7921b8d58d48c..25181c2d11594bb15af85591585a3f789e045792 100644 (file)
@@ -1005,6 +1005,15 @@ void wxApp::OnIdle(wxIdleEvent& event)
 
     s_inOnIdle = TRUE;
 
+    // If there are pending events, we must process them: pending events
+    // are either events to the threads other than main or events posted
+    // with wxPostEvent() functions
+    // GRG: I have moved this here so that all pending events are processed
+    //   before starting to delete any objects. This behaves better (in
+    //   particular, wrt wxPostEvent) and is coherent with wxGTK's current
+    //   behaviour. Changed Feb/2000 before 2.1.14
+    ProcessPendingEvents();
+
     // 'Garbage' collection of windows deleted with Close().
     DeletePendingObjects();
 
@@ -1023,11 +1032,6 @@ void wxApp::OnIdle(wxIdleEvent& event)
         event.RequestMore(TRUE);
     }
 
-    // If they are pending events, we must process them: pending events are
-    // either events to the threads other than main or events posted with
-    // wxPostEvent() functions
-    ProcessPendingEvents();
-
     s_inOnIdle = FALSE;
 }