diff options
| author | Joe Shaw <joeshaw@novell.com> | 2005-03-11 17:43:22 +0000 | 
|---|---|---|
| committer | Joe Shaw <joeshaw@novell.com> | 2005-03-11 17:43:22 +0000 | 
| commit | 3c1d2d65654f92f24d3e5c9c5b88d76a10f72822 (patch) | |
| tree | 45ff6c61b961cceea5c854eef8ca982d252c015e | |
| parent | 59948748b24ca6f266b1eb957849e3d3127242bd (diff) | |
2005-03-11  Joe Shaw  <joeshaw@novell.com>
	* dbus/dbus-connection.c (dbus_connection_send_with_reply): Remove
	this unref; it doesn't match up evenly in some codepaths.
	(_dbus_connection_block_pending_call): Unref at every exitpoint;
	this evenly matches with the ref near the top of this function.
| -rw-r--r-- | ChangeLog | 7 | ||||
| -rw-r--r-- | dbus/dbus-connection.c | 6 | 
2 files changed, 11 insertions, 2 deletions
@@ -1,3 +1,10 @@ +2005-03-11  Joe Shaw  <joeshaw@novell.com> + +	* dbus/dbus-connection.c (dbus_connection_send_with_reply): Remove +	this unref; it doesn't match up evenly in some codepaths. +	(_dbus_connection_block_pending_call): Unref at every exitpoint; +	this evenly matches with the ref near the top of this function. +  2005-03-09  Joe Shaw  <joeshaw@novell.com>  	* dbus/dbus-object-tree.c diff --git a/dbus/dbus-connection.c b/dbus/dbus-connection.c index db76ba22..a08aa366 100644 --- a/dbus/dbus-connection.c +++ b/dbus/dbus-connection.c @@ -2460,8 +2460,6 @@ dbus_connection_send_with_reply (DBusConnection     *connection,  						      pending))      goto error; -  dbus_pending_call_unref (pending); -     if (!_dbus_connection_send_unlocked_no_update (connection, message, NULL))      {        _dbus_connection_detach_pending_call_and_unlock (connection, @@ -2606,6 +2604,7 @@ _dbus_connection_block_pending_call (DBusPendingCall *pending)      {        _dbus_verbose ("Pending call completed by dispatch in %s\n", _DBUS_FUNCTION_NAME);        _dbus_connection_update_dispatch_status_and_unlock (connection, status); +      dbus_pending_call_unref (pending);        return;      } @@ -2626,6 +2625,7 @@ _dbus_connection_block_pending_call (DBusPendingCall *pending)            CONNECTION_LOCK (connection);            status = _dbus_connection_get_dispatch_status_unlocked (connection);            _dbus_connection_update_dispatch_status_and_unlock (connection, status); +          dbus_pending_call_unref (pending);            return;          } @@ -2641,6 +2641,7 @@ _dbus_connection_block_pending_call (DBusPendingCall *pending)         */        _dbus_pending_call_complete_and_unlock (pending, NULL); +      dbus_pending_call_unref (pending);        return;      }    else if (tv_sec < start_tv_sec) @@ -2694,6 +2695,7 @@ _dbus_connection_block_pending_call (DBusPendingCall *pending)    CONNECTION_LOCK (connection);    status = _dbus_connection_get_dispatch_status_unlocked (connection);    _dbus_connection_update_dispatch_status_and_unlock (connection, status); +  dbus_pending_call_unref (pending);  }  /**  | 
