summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <ossi@kde.org>2008-06-07 17:24:50 +0200
committerThiago Macieira <thiago@kde.org>2008-06-07 17:45:08 +0200
commitd7bb3cf8dfc162007caf5e28d9c304381de7b8c3 (patch)
tree545ac5174369837a8fc969c53c9b22eadbc5002e
parentcdca6dbce88fd1e1195e2a81eb6619c782df2fac (diff)
Fix inverted return value from dbus_connection_read_write()
* 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>
-rw-r--r--dbus/dbus-connection.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/dbus/dbus-connection.c b/dbus/dbus-connection.c
index 7b13b249..2e291eee 100644
--- a/dbus/dbus-connection.c
+++ b/dbus/dbus-connection.c
@@ -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 */
}