provider: Return existing service path if already connected
authorJukka Rissanen <jukka.rissanen@linux.intel.com>
Wed, 24 Aug 2011 14:02:04 +0000 (17:02 +0300)
committerSamuel Ortiz <sameo@linux.intel.com>
Mon, 12 Sep 2011 09:40:47 +0000 (11:40 +0200)
src/provider.c

index bbd462e..8f1862e 100644 (file)
@@ -571,11 +571,12 @@ int __connman_provider_create_and_connect(DBusMessage *msg)
                        err = -EOPNOTSUPP;
                        goto unref;
                }
-       }
 
-       err = __connman_service_connect(provider->vpn_service);
-       if (err < 0 && err != -EINPROGRESS)
-               goto failed;
+               err = __connman_service_connect(provider->vpn_service);
+               if (err < 0 && err != -EINPROGRESS)
+                       goto failed;
+       } else
+               DBG("provider already connected");
 
        service_path = __connman_service_get_path(provider->vpn_service);
        g_dbus_send_reply(connection, msg,