Fix issues that detected by static analysis tool 98/319098/3
authorsungwook79.park <sungwook79.park@samsung.com>
Tue, 4 Feb 2025 08:06:39 +0000 (17:06 +0900)
committersungwook79.park <sungwook79.park@samsung.com>
Wed, 5 Feb 2025 04:36:33 +0000 (13:36 +0900)
Change-Id: I837f33c0dddc37a5230f0accd195921e8a996de1
Signed-off-by: sungwook79.park <sungwook79.park@samsung.com>
server/PlayerThread.cpp
server/ttsd_data.cpp
server/ttsd_engine_agent.c

index 95ef600312cf009645d2d1a77145a3bf31320c5d..51fc37b3af8aa418c1f7cde0129a858aefd3172b 100644 (file)
@@ -44,7 +44,7 @@ PlayerThread::PlayerThread(PlayUtteranceCallback threadFucntion)
 PlayerThread::~PlayerThread()
 {
        SLOG(LOG_INFO, tts_tag(), "[PlayerThread] Destructor");
-       unique_lock<mutex> controlLock(mControlMutex);
+       lock_guard<mutex> controlLock(mControlMutex);
        mPlayerAvailable = false;
        mPlayUtterance = nullptr;
 
@@ -52,7 +52,9 @@ PlayerThread::~PlayerThread()
        SLOG(LOG_INFO, tts_tag(), "[PlayerThread] Thread is stopped or waiting");
 
        mThreadCond.notify_all();
-       mPlayerThread.join();
+       if (mPlayerThread.joinable()) {
+               mPlayerThread.join();
+       }
        SLOG(LOG_INFO, tts_tag(), "[PlayerThread] Finish thread");
 }
 
index fe1eb2a22e9c0aaf51e4b93bb20d4b7fd4d6d3de..bf9cddce5c023a7bcb2ad0a00d302cb36f7b0088 100644 (file)
@@ -930,7 +930,7 @@ int ttsd_data_foreach_clients(ttsd_data_get_client_cb callback, void* user_data)
                app.utt_id_stopped = 0;
                app.state = g_app_list[i].state;
 
-               temp_app_list.push_back(app);
+               temp_app_list.push_back(std::move(app));
        }
        lock.unlock();
 
index 443a6879ff2fbdf66035bfc2c01c0c5c56b82ec4..a79401362ecb292604f9deb7998da0e68904923d 100644 (file)
@@ -231,6 +231,7 @@ int ttsd_engine_agent_init(ttse_request_callback_s *callback)
                /* Set default voice */
                if (temp->default_lang) {
                        free(temp->default_lang);
+                       temp->default_lang = NULL;
                }
                temp->default_lang = strdup(TTS_BASE_LANGUAGE);
                temp->default_vctype = TTSE_VOICE_TYPE_FEMALE;
@@ -652,7 +653,7 @@ bool ttsd_engine_select_valid_voice(const char* lang, int type, const char* ptts
                                result = true;
                        }
                }
-       } else if (0 == strncmp(lang, "default", strlen("default")) && 0 != type) {
+       } else if (0 == strncmp(lang, "default", strlen("default") + 1) && 0 != type) {
                /* Only lang is default */
                if (type == g_engine_info->default_vctype) { // default type != personal_type
                        *out_lang = strdup(g_engine_info->default_lang);