Apply tizen 3.0 based product patchsets
[platform/core/connectivity/bluetooth-frwk.git] / bt-core / bt-core-adapter.c
index 1ea2b8c..a98b5c9 100644 (file)
@@ -541,6 +541,13 @@ gboolean _bt_core_enable_adapter(void)
                return TRUE;
 }
 
+static gboolean __bt_core_terminate_cb(gpointer data)
+{
+       _bt_core_terminate();
+
+       return FALSE;
+}
+
 gboolean _bt_core_disable_adapter(void)
 {
        int ret;
@@ -549,6 +556,8 @@ gboolean _bt_core_disable_adapter(void)
        if (vconf_set_int(BT_OFF_DUE_TO_FLIGHT_MODE, 0) != 0)
                BT_ERR("Set vconf failed");
 
+       g_idle_add((GSourceFunc)__bt_core_terminate_cb, NULL);
+
        ret = _bt_disable_adapter();
        if (ret < 0)
                return FALSE;
@@ -712,7 +721,6 @@ gboolean _bt_core_factory_test_mode(const char *type, const char *arg)
                arg_list[0] = "bt-enable-rf-channel.sh";
                arg_list[1] = (char *)arg;
        } else {
-               _bt_core_terminate();
                return FALSE;
        }
 
@@ -720,7 +728,6 @@ gboolean _bt_core_factory_test_mode(const char *type, const char *arg)
        if (__execute_command(cmd, arg_list) < 0)
                BT_ERR("running script failed");
 
-       _bt_core_terminate();
        return TRUE;
 }