From 6240b218e6bb7efc03d2e33db80d1bdeb0023a0f Mon Sep 17 00:00:00 2001 From: Saurav Babu Date: Wed, 25 Jul 2018 14:54:48 +0530 Subject: [PATCH] Don't free dbus method invocation twice Change-Id: I6b006b5c547d809acd6c4126da35cc3d80869585 Signed-off-by: Saurav Babu --- src/wifi-agent.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/wifi-agent.c b/src/wifi-agent.c index b8926d2..e66ffa4 100755 --- a/src/wifi-agent.c +++ b/src/wifi-agent.c @@ -299,13 +299,13 @@ gboolean handle_set_field(NetConnmanAgent *connman_agent, } } + g_variant_iter_free(iter); + if (updated == TRUE) { reply = netconfig_invoke_dbus_method_nonblock(CONNMAN_SERVICE, service, CONNMAN_SERVICE_INTERFACE, "Connect", NULL, __netconfig_wifi_connect_reply); - if (reply == TRUE) { - g_dbus_method_invocation_return_value(context, NULL); - } else { + if (reply != TRUE) { ERR("Fail to connect Wi-Fi"); __netconfig_agent_clear_fields(); error = g_error_new(G_DBUS_ERROR, @@ -314,22 +314,21 @@ gboolean handle_set_field(NetConnmanAgent *connman_agent, g_dbus_method_invocation_return_gerror(context, error); g_clear_error(&error); + return TRUE; } } else { + ERR("Fail to connect Wi-Fi"); + __netconfig_agent_clear_fields(); + error = g_error_new(G_DBUS_ERROR, G_DBUS_ERROR_AUTH_FAILED, CONNMAN_ERROR_INTERFACE ".InvalidArguments"); g_dbus_method_invocation_return_gerror(context, error); g_clear_error(&error); + return TRUE; } - if (reply != TRUE) { - ERR("Fail to connect Wi-Fi"); - __netconfig_agent_clear_fields(); - } - g_variant_iter_free(iter); - net_connman_agent_complete_set_field(connman_agent, context); return TRUE; } -- 2.7.4