Destroy previously created group in case of failure 38/238938/3
authorShagun Garg <shagun1.garg@samsung.com>
Tue, 18 Aug 2020 11:30:45 +0000 (17:00 +0530)
committerShagun Garg <shagun1.garg@samsung.com>
Tue, 18 Aug 2020 11:31:48 +0000 (17:01 +0530)
[Issue] Unable to create group further if failed previously due to incorrect ssid length.
[Solution] Destroy previously created group before returning failure due to incorrect ssid length check.

Change-Id: I60a018ca60fa850cbd7a65b432f55f00d8c73e9e

packaging/wifi-direct-manager.spec
src/wifi-direct-method.c

index ba94b27..4fe5a62 100644 (file)
@@ -6,7 +6,7 @@
 
 Name:          wifi-direct-manager
 Summary:       Wi-Fi Direct manger
-Version:       1.3.1
+Version:       1.3.2
 Release:       1
 Group:      Network & Connectivity/Wireless
 License:    Apache-2.0
index 0744a91..ccc1123 100755 (executable)
@@ -923,6 +923,8 @@ void create_group_handler(GVariant *parameters, void *dest)
                ssid_len = strlen(ssid);
                if (ssid_len < WIFI_DIRECT_MIN_SSID_LEN || ssid_len > WIFI_DIRECT_MAX_SSID_LEN) {
                        WDS_LOGE("SSID length incorrect [%s]:[%d], whereas [Proper SSID Length Range is 1-32 ]", ssid, ssid_len);
+                       /* Destroy previously created group */
+                       wfd_destroy_group(manager);
                        ret = WIFI_DIRECT_ERROR_INVALID_PARAMETER;
                        g_variant_iter_free(iter);
                        return_parameters = g_variant_new("(i)", ret);