|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
From d6ab6476e0986340ea43c1383ff8153ac224a4c9 Mon Sep 17 00:00:00 2001
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
From: Scott James Remnant <scott@netsplit.com>
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
Date: Thu, 24 Apr 2008 16:02:11 +0100
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
Subject: [PATCH] * dbus/dbus-connection.c (_dbus_connection_read_write_dispatch):
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
Reference the D-Bus connection during the function call since we
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
call other functions that may free the last reference and we
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
still expect to be able to check the connection after they return
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
to decide our own return value.
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
---
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
dbus/dbus-connection.c | 3 +++
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
1 files changed, 3 insertions(+), 0 deletions(-)
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
diff --git a/dbus/dbus-connection.c b/dbus/dbus-connection.c
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
index 5b25534..517deac 100644
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
--- a/dbus/dbus-connection.c
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
+++ b/dbus/dbus-connection.c
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
@@ -3410,6 +3410,8 @@ _dbus_connection_read_write_dispatch (DBusConnection *connection,
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
{
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
DBusDispatchStatus dstatus;
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
dbus_bool_t no_progress_possible;
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
+
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
+ dbus_connection_ref (connection);
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
dstatus = dbus_connection_get_dispatch_status (connection);
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
@@ -3450,6 +3452,7 @@ _dbus_connection_read_write_dispatch (DBusConnection *connection,
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
else
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
no_progress_possible = _dbus_connection_get_is_connected_unlocked (connection);
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
CONNECTION_UNLOCK (connection);
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
+ dbus_connection_unref (connection);
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
return !no_progress_possible; /* TRUE if we can make more progress */
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
}
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
--
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
1.5.4.3
|
|
![](https://seccdn.libravatar.org/avatar/d71ff6219a90311bed7f943b273f11fb586a0106c92ac3b738b2f521680df5b3?s=16&d=retro) |
9ea1ced |
|