From c43880fe6182cb0e9de69eec5c925aa4d32a2839 Mon Sep 17 00:00:00 2001 From: "taesub.kim" Date: Thu, 22 Sep 2016 13:48:04 +0900 Subject: [PATCH] Reset scanning status to FALSE if scan request fails. Previous normal scan request status not reseted after request failed, this blocks specific scan request & Reset scanning status if scan request fails. Change-Id: I6b780ff446c3a27f138ae3a12ec845620452ef73 Signed-off-by: Taesub Kim --- packaging/net-config.spec | 2 +- resources/etc/dbus-1/system.d/net-config.conf | 0 scripts/netconfig_upgrade.sh | 0 src/wifi-background-scan.c | 29 ++++++++++++++++++- 4 files changed, 29 insertions(+), 2 deletions(-) mode change 100644 => 100755 resources/etc/dbus-1/system.d/net-config.conf mode change 100644 => 100755 scripts/netconfig_upgrade.sh diff --git a/packaging/net-config.spec b/packaging/net-config.spec index 315a25b..3350a98 100755 --- a/packaging/net-config.spec +++ b/packaging/net-config.spec @@ -1,6 +1,6 @@ Name: net-config Summary: TIZEN Network Configuration service -Version: 1.1.89 +Version: 1.1.90 Release: 2 Group: System/Network License: Apache-2.0 diff --git a/resources/etc/dbus-1/system.d/net-config.conf b/resources/etc/dbus-1/system.d/net-config.conf old mode 100644 new mode 100755 diff --git a/scripts/netconfig_upgrade.sh b/scripts/netconfig_upgrade.sh old mode 100644 new mode 100755 diff --git a/src/wifi-background-scan.c b/src/wifi-background-scan.c index 2de65bb..9894809 100755 --- a/src/wifi-background-scan.c +++ b/src/wifi-background-scan.c @@ -85,6 +85,33 @@ static guint __netconfig_wifi_bgscan_get_mode(void) return __netconfig_wifi_bgscan_mode(FALSE, -1); } +static void __netconfig_wifi_scan_request_reply(GObject *source_object, GAsyncResult *res, gpointer user_data) + +{ + GVariant *reply; + GDBusConnection *conn = NULL; + GError *error = NULL; + + conn = G_DBUS_CONNECTION (source_object); + reply = g_dbus_connection_call_finish(conn, res, &error); + + if (reply == NULL) { + if (error != NULL) { + ERR("Fail to request status [%d: %s]", error->code, error->message); + netconfig_wifi_set_scanning(FALSE); + g_error_free(error); + } else { + ERR("Fail to request scan"); + netconfig_wifi_set_scanning(FALSE); + } + } else { + DBG("Successfully requested"); + } + + g_variant_unref(reply); + netconfig_gdbus_pending_call_unref(); +} + static gboolean __netconfig_wifi_bgscan_request_connman_scan(int retries) { gboolean reply = FALSE; @@ -105,7 +132,7 @@ static gboolean __netconfig_wifi_bgscan_request_connman_scan(int retries) reply = netconfig_invoke_dbus_method_nonblock(CONNMAN_SERVICE, CONNMAN_WIFI_TECHNOLOGY_PREFIX, - CONNMAN_TECHNOLOGY_INTERFACE, "Scan", NULL, NULL); + CONNMAN_TECHNOLOGY_INTERFACE, "Scan", NULL, __netconfig_wifi_scan_request_reply); if (reply != TRUE) netconfig_wifi_set_scanning(FALSE); -- 2.34.1