Resolved the GAP Agent re-registration Failure 18/214718/1 accepted/tizen/unified/20190926.065727 submit/tizen/20190925.223306
authorAmit Purwar <amit.purwar@samsung.com>
Wed, 25 Sep 2019 12:37:13 +0000 (18:07 +0530)
committerAmit Purwar <amit.purwar@samsung.com>
Wed, 25 Sep 2019 12:40:08 +0000 (18:10 +0530)
Change-Id: I8c828e15b2aae66bcdb4d606328b27e5e1993f46
Signed-off-by: Amit Purwar <amit.purwar@samsung.com>
bt-oal/bluez_hal/src/bt-hal-gap-agent.c

index 9a9f804..735951b 100644 (file)
@@ -49,6 +49,8 @@ typedef enum {
        GAP_AGENT_ERROR_TIMEOUT,
 } GapAgentError;
 
+#define AGENT_ALREADY_EXIST 0x24
+
 #define GAP_AGENT_ERROR (gap_agent_error_quark())
 
 static GQuark gap_agent_error_quark(void)
@@ -150,11 +152,17 @@ gboolean _gap_agent_register(GapAgentPrivate *agent)
                if (error) {
                        ERR("Agent registration failed: errCode[%x], message[%s]",
                                        error->code, error->message);
+               }
+
+               if (error->code == AGENT_ALREADY_EXIST) {
+                       DBG("Agent is already registered");
+                       g_clear_error(&error);
+               } else {
                        g_clear_error(&error);
+                       g_object_unref(agent_manager);
+                       priv->agent_manager = NULL;
+                       return FALSE;
                }
-               g_object_unref(agent_manager);
-               priv->agent_manager = NULL;
-               return FALSE;
        }
        g_variant_unref(reply);
        reply = NULL;