]> git.ipfire.org Git - thirdparty/dbus.git/commitdiff
Fix inverted return value from dbus_connection_read_write()
authorOswald Buddenhagen <ossi@kde.org>
Sat, 7 Jun 2008 15:24:50 +0000 (17:24 +0200)
committerThiago Macieira <thiago@kde.org>
Sat, 7 Jun 2008 15:45:08 +0000 (17:45 +0200)
    * dbus/dbus-connection.c (_dbus_connection_read_write_dispatch):
      The double negation re no_progress_possible was obviously too
      confusing: the path for dispatch = FALSE would return an inverted
      status. So make it progress_possible and fix the logic.

Signed-off-by: Thiago Macieira <thiago@kde.org>
dbus/dbus-connection.c

index 7b13b2498233a15edfd4ffcb7c07db5b51291ec9..2e291eee95d14d67d5fc02cf289c67c372bbf62d 100644 (file)
@@ -3412,6 +3412,7 @@ _dbus_connection_read_write_dispatch (DBusConnection *connection,
 {
   DBusDispatchStatus dstatus;
   dbus_bool_t no_progress_possible;
+  dbus_bool_t progress_possible;
   
   dstatus = dbus_connection_get_dispatch_status (connection);
 
@@ -3447,12 +3448,13 @@ _dbus_connection_read_write_dispatch (DBusConnection *connection,
    * as long as the transport is open.
    */
   if (dispatch)
-    no_progress_possible = connection->n_incoming == 0 &&
-      connection->disconnect_message_link == NULL;
+    progress_possible = connection->n_incoming != 0 ||
+      connection->disconnect_message_link != NULL;
   else
-    no_progress_possible = _dbus_connection_get_is_connected_unlocked (connection);
+    progress_possible = _dbus_connection_get_is_connected_unlocked (connection);
+
   CONNECTION_UNLOCK (connection);
-  return !no_progress_possible; /* TRUE if we can make more progress */
+  return progress_possible; /* TRUE if we can make more progress */
 }