summaryrefslogtreecommitdiff
path: root/src/nm-manager-auth.c
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2013-11-22 18:21:00 +0100
committerThomas Haller <thaller@redhat.com>2013-11-22 18:21:00 +0100
commit21385d31fb547377d63236af4ec321d72866463c (patch)
tree523e734016fc4ad4a8e41505f3257b90a350a07c /src/nm-manager-auth.c
parent35936a70de5d1745d55469927b8692b37a33c9a1 (diff)
downloadNetworkManager-21385d31fb547377d63236af4ec321d72866463c.tar.gz
fixup! core: fix crash in nm-manager-auth
Diffstat (limited to 'src/nm-manager-auth.c')
-rw-r--r--src/nm-manager-auth.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/nm-manager-auth.c b/src/nm-manager-auth.c
index 31cb507210..12f2c5f224 100644
--- a/src/nm-manager-auth.c
+++ b/src/nm-manager-auth.c
@@ -58,7 +58,6 @@ typedef struct {
GCancellable *cancellable;
char *permission;
guint call_idle_id;
- gboolean disposed;
} AuthCall;
typedef struct {
@@ -363,12 +362,11 @@ auth_call_complete (AuthCall *call)
static void
auth_call_cancel (AuthCall *call)
{
- g_assert (!call->disposed);
g_assert ((call->call_idle_id != 0) ^ (call->cancellable != NULL));
if (call->cancellable) {
- call->disposed = TRUE;
g_cancellable_cancel (call->cancellable);
+ g_clear_object (&call->cancellable);
} else
auth_call_free (call);
}
@@ -383,10 +381,9 @@ pk_call_cb (GObject *object, GAsyncResult *result, gpointer user_data)
GError *error = NULL;
g_assert (call->call_idle_id == 0);
- g_assert (call->cancellable != NULL);
- /* If the call is already disposed do nothing */
- if (call->disposed) {
+ /* If the call is already canceled do nothing */
+ if (!call->cancellable) {
auth_call_free (call);
return;
}