diff options
author | Thomas Haller <thaller@redhat.com> | 2013-11-22 18:21:00 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2013-11-22 18:21:00 +0100 |
commit | 21385d31fb547377d63236af4ec321d72866463c (patch) | |
tree | 523e734016fc4ad4a8e41505f3257b90a350a07c /src/nm-manager-auth.c | |
parent | 35936a70de5d1745d55469927b8692b37a33c9a1 (diff) | |
download | NetworkManager-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.c | 9 |
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; } |