diff options
author | Vivek Dasmohapatra <vivek@collabora.co.uk> | 2011-09-06 19:20:28 +0100 |
---|---|---|
committer | Vivek Dasmohapatra <vivek@collabora.co.uk> | 2011-09-06 19:20:28 +0100 |
commit | 1e87b2f7f5c34ef40b3af87fc29b6a89e7ea7b21 (patch) | |
tree | 3cdc2b1488321594a427dbca2173b00942e13ce9 /src | |
parent | e116686b7e33474265795025374023e5ceeb4913 (diff) | |
parent | b29f2a8554a0a303fd7dca0ce6aae620423882ad (diff) |
Merge branch 'memory-leak'
Conflicts:
NEWS
Diffstat (limited to 'src')
-rw-r--r-- | src/mcd-account-manager-sso.c | 4 | ||||
-rw-r--r-- | src/mcd-dispatch-operation.c | 11 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/mcd-account-manager-sso.c b/src/mcd-account-manager-sso.c index ca34417f..4f69c094 100644 --- a/src/mcd-account-manager-sso.c +++ b/src/mcd-account-manager-sso.c @@ -885,6 +885,10 @@ _ag_accountid_to_mc_key (McdAccountManagerSso *sso, g_value_unset (&value); return uid; } + else + { + g_value_unset (&value); + } if (!create) return NULL; diff --git a/src/mcd-dispatch-operation.c b/src/mcd-dispatch-operation.c index 327ecb34..f21edf80 100644 --- a/src/mcd-dispatch-operation.c +++ b/src/mcd-dispatch-operation.c @@ -153,6 +153,7 @@ approval_free (Approval *approval) /* we should have replied to the method call by now */ g_assert (approval->context == NULL); + g_free (approval->client_bus_name); g_slice_free (Approval, approval); } @@ -563,6 +564,7 @@ _mcd_dispatch_operation_check_client_locks (McdDispatchOperation *self) g_source_remove (approver_event_id); } + approval_free (approval); return; } else if (approval != NULL && approval->type == APPROVAL_TYPE_HANDLE_WITH) @@ -856,6 +858,7 @@ _mcd_dispatch_operation_finish (McdDispatchOperation *operation, * it's OK to not distinguish */ tp_svc_channel_dispatch_operation_return_from_handle_with ( approval->context); + approval->context = NULL; } else { @@ -864,6 +867,7 @@ _mcd_dispatch_operation_finish (McdDispatchOperation *operation, successful_handler); dbus_g_method_return_error (approval->context, priv->result); + approval->context = NULL; } } else @@ -875,13 +879,18 @@ _mcd_dispatch_operation_finish (McdDispatchOperation *operation, g_quark_to_string (priv->result->domain), priv->result->code, priv->result->message); dbus_g_method_return_error (approval->context, priv->result); + approval->context = NULL; } break; default: - {} /* do nothing */ + { /* there shouldn't be a dbus context for these: */ + g_assert (approval->context == NULL); + } } + + approval_free (approval); } if (mcd_dispatch_operation_may_signal_finished (operation)) |