summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJukka Rissanen <jukka.rissanen@linux.intel.com>2012-11-23 13:41:22 +0200
committerDaniel Wagner <daniel.wagner@bmw-carit.de>2012-11-23 13:36:04 +0100
commit74dca0ab7101a25d4c4d1ca5d89f8a4807b94ac9 (patch)
treee0aba1c5592763647c8987d7aeae605a9dc6c1b3
parent8a20e52ddeb204bc1c73345ade542445dd3df244 (diff)
downloadconnman-74dca0ab7101a25d4c4d1ca5d89f8a4807b94ac9.tar.gz
connman-74dca0ab7101a25d4c4d1ca5d89f8a4807b94ac9.tar.bz2
connman-74dca0ab7101a25d4c4d1ca5d89f8a4807b94ac9.zip
provider: Set the state properly when removing provider
We need to set the provider into idle state when removing, otherwise the default route will not be set properly after provider removal. Fixes BMC#25658
-rw-r--r--src/provider.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/provider.c b/src/provider.c
index fe7eb883..fa3bc485 100644
--- a/src/provider.c
+++ b/src/provider.c
@@ -197,6 +197,9 @@ int __connman_provider_remove(const char *path)
provider_remove(provider);
+ connman_provider_set_state(provider,
+ CONNMAN_PROVIDER_STATE_IDLE);
+
g_hash_table_remove(provider_hash,
provider->identifier);
return 0;