mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-01-14 09:00:23 +01:00
Prevent a crash in some applications due to timers leaking after the
DVusPendingCall object was freed.
* dbus-connection.c: Remove the timer for the pending call's timeout in
case the reply has timed out in blocking code. This fixes bug 15684.
This commit is contained in:
parent
12e838d766
commit
cdca6dbce8
1 changed files with 7 additions and 0 deletions
|
|
@ -965,6 +965,13 @@ _dbus_connection_detach_pending_call_and_unlock (DBusConnection *connection,
|
|||
_dbus_pending_call_ref_unlocked (pending);
|
||||
_dbus_hash_table_remove_int (connection->pending_replies,
|
||||
_dbus_pending_call_get_reply_serial_unlocked (pending));
|
||||
|
||||
if (_dbus_pending_call_is_timeout_added_unlocked (pending))
|
||||
_dbus_connection_remove_timeout_unlocked (connection,
|
||||
_dbus_pending_call_get_timeout_unlocked (pending));
|
||||
|
||||
_dbus_pending_call_set_timeout_added_unlocked (pending, FALSE);
|
||||
|
||||
_dbus_pending_call_unref_and_unlock (pending);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue