Add retry logic when rpc_port_stub_tts_register() is failed 75/268275/1
authorsooyeon <sooyeon.kim@samsung.com>
Sun, 19 Dec 2021 13:40:04 +0000 (22:40 +0900)
committersooyeon <sooyeon.kim@samsung.com>
Sun, 19 Dec 2021 13:40:04 +0000 (22:40 +0900)
Change-Id: Ide6d36eb8b6f66fd156358fead29e911f936ffd1
Signed-off-by: sooyeon <sooyeon.kim@samsung.com>
server/ttsd_tidl.c

index b26dca3..6560997 100644 (file)
@@ -459,13 +459,21 @@ int ttsd_tidl_open_connection()
        g_callback.play = __play_cb;
        g_callback.add_pcm = __add_pcm_cb;
 
-       if (0 != rpc_port_stub_tts_register(&g_callback, NULL)) {
-               return TTSE_ERROR_OPERATION_FAILED;
-       }
 
-       SLOG(LOG_DEBUG, tts_tag(), "regitster callback");
+       int ret = -1;
+       int count = 0;
+       while (TTS_RETRY_MIN_COUNT >= count) {
+               ret = rpc_port_stub_tts_register(&g_callback, NULL);
+               if (0 == ret) {
+                       SLOG(LOG_DEBUG, tts_tag(), "regitster callback");
+                       return TTSE_ERROR_NONE;
+               }
+               usleep(100000);
+               count++;
+       }
 
-       return TTSE_ERROR_NONE;
+       SLOG(LOG_ERROR, tts_tag(), "Fail to register callback(%d)", ret);
+       return TTSE_ERROR_OPERATION_FAILED;
 }
 
 int ttsd_tidl_close_connection()