diff options
author | Martin Xu <martin.xu@intel.com> | 2009-07-16 07:22:36 +0800 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-07-16 03:07:37 +0200 |
commit | da2d28b38c3b6d521652c55f0451feccd9d02a7f (patch) | |
tree | b037049903f4ab5fb4292bee276ebba3dcf308ac /plugins | |
parent | b4436ebb00f0e6363d6fd340b68950a9daa20fc0 (diff) | |
download | connman-da2d28b38c3b6d521652c55f0451feccd9d02a7f.tar.gz connman-da2d28b38c3b6d521652c55f0451feccd9d02a7f.tar.bz2 connman-da2d28b38c3b6d521652c55f0451feccd9d02a7f.zip |
Fix stalled configuration issue with supplicant
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/supplicant.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/plugins/supplicant.c b/plugins/supplicant.c index b964ae7a..66a7580c 100644 --- a/plugins/supplicant.c +++ b/plugins/supplicant.c @@ -1617,6 +1617,20 @@ static void state_change(struct supplicant_task *task, DBusMessage *msg) connman_network_set_associating(task->network, TRUE); break; + case WPA_INACTIVE: + if (task->disconnecting == TRUE) { + connman_network_set_connected(task->network, FALSE); + connman_network_unref(task->network); + task->disconnecting = FALSE; + + if (task->pending_network != NULL) { + task->network = task->pending_network; + task->pending_network = NULL; + task_connect(task); + } + } + break; + default: connman_network_set_associating(task->network, FALSE); break; |