]> Pileus Git - ~andy/gtk/commitdiff
broadway: Fix gdk_broadway_server_wait_for_reply
authorAlexander Larsson <alexl@redhat.com>
Tue, 8 Jan 2013 16:28:49 +0000 (17:28 +0100)
committerAlexander Larsson <alexl@redhat.com>
Tue, 8 Jan 2013 17:05:06 +0000 (18:05 +0100)
We didn't properly queue an idle to handle the read messages so they
were never serviced in some situations.

gdk/broadway/gdkbroadway-server.c

index 803152a790558be501453a6c4f1cae15cb5d74a7..0699778eec65f6cbe94c775e722565d879d2e765 100644 (file)
@@ -309,16 +309,16 @@ input_available_cb (gpointer stream, gpointer user_data)
 static BroadwayReply *
 gdk_broadway_server_wait_for_reply (GdkBroadwayServer *server,
                                    guint32 serial)
-{ 
+{
   BroadwayReply *reply;
-  
+
   while (TRUE)
     {
       reply = find_response_by_serial (server, serial);
       if (reply)
        {
          server->incomming = g_list_remove (server->incomming, reply);
-         return reply;
+         break;
        }
 
       read_some_input_blocking (server);
@@ -326,6 +326,7 @@ gdk_broadway_server_wait_for_reply (GdkBroadwayServer *server,
     }
 
   queue_process_input_at_idle (server);
+  return reply;
 }
 
 void