device: Combine two if statements with identical outcome
[framework/connectivity/connman.git] / plugins / pacrunner.c
index f914eeb..418dce2 100644 (file)
@@ -2,7 +2,7 @@
  *
  *  Connection Manager
  *
- *  Copyright (C) 2007-2010  Intel Corporation. All rights reserved.
+ *  Copyright (C) 2007-2012  Intel Corporation. All rights reserved.
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License version 2 as
@@ -121,6 +121,7 @@ static void create_proxy_configuration(void)
 
        switch(connman_service_get_proxy_method(default_service)) {
        case CONNMAN_SERVICE_PROXY_METHOD_UNKNOWN:
+               connman_dbus_dict_close(&iter, &dict);
                goto done;
        case CONNMAN_SERVICE_PROXY_METHOD_DIRECT:
                method= "direct";
@@ -129,8 +130,10 @@ static void create_proxy_configuration(void)
                method = "manual";
 
                str_list = connman_service_get_proxy_servers(default_service);
-               if (str_list == NULL)
+               if (str_list == NULL) {
+                       connman_dbus_dict_close(&iter, &dict);
                        goto done;
+               }
 
                connman_dbus_dict_append_array(&dict, "Servers",
                                        DBUS_TYPE_STRING, append_string_list,
@@ -154,8 +157,10 @@ static void create_proxy_configuration(void)
                if (str == NULL) {
                        str = connman_service_get_proxy_autoconfig(
                                                        default_service);
-                       if (str == NULL)
+                       if (str == NULL) {
+                               connman_dbus_dict_close(&iter, &dict);
                                goto done;
+                       }
                }
 
                connman_dbus_dict_append_basic(&dict, "URL",
@@ -178,10 +183,12 @@ static void create_proxy_configuration(void)
                connman_dbus_dict_append_array(&dict, "Domains",
                                        DBUS_TYPE_STRING, append_string, &str);
 
-       str = connman_service_get_nameserver(default_service);
-       if (str != NULL)
+       str_list = connman_service_get_nameservers(default_service);
+       if (str_list != NULL)
                connman_dbus_dict_append_array(&dict, "Nameservers",
-                                       DBUS_TYPE_STRING, append_string, &str);
+                                       DBUS_TYPE_STRING, append_string_list,
+                                       str_list);
+       g_strfreev(str_list);
 
        connman_dbus_dict_close(&iter, &dict);