From 049f873dc114712739b35e8098dfc9fb9c01dc11 Mon Sep 17 00:00:00 2001 From: Samuel Ortiz Date: Thu, 23 Dec 2010 13:05:32 +0100 Subject: [PATCH] service: Don't clear ipconfig layers if network disconnection failed --- src/service.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/service.c b/src/service.c index f7fa76c..4b2be46 100644 --- a/src/service.c +++ b/src/service.c @@ -3393,6 +3393,9 @@ int __connman_service_disconnect(struct connman_service *service) else return -EOPNOTSUPP; + if (err < 0 && err != -EINPROGRESS) + return err; + if (service->ipconfig_ipv4) __connman_ipconfig_set_proxy_autoconfig(service->ipconfig_ipv4, NULL); @@ -3411,14 +3414,7 @@ int __connman_service_disconnect(struct connman_service *service) __connman_stats_service_unregister(service); - if (err < 0) { - if (err != -EINPROGRESS) - return err; - - return -EINPROGRESS; - } - - return 0; + return err; } /** -- 2.7.4