Fix issues that detected by static analysis tool 84/314584/1
authorsungwook79.park <sungwook79.park@samsung.com>
Tue, 16 Jul 2024 02:54:56 +0000 (11:54 +0900)
committersungwook79.park <sungwook79.park@samsung.com>
Tue, 16 Jul 2024 02:54:56 +0000 (11:54 +0900)
Change-Id: Ib0d344549d6ede064739c2c308fbd8a6fd65c1d6
Signed-off-by: sungwook79.park <sungwook79.park@samsung.com>
client/tts.c
server/AudioStream.cpp
server/ttsd_server.c

index 01d0f25c5075d927e4208a832d008815ff25f619..2abfb55702c64de3e1dac8de2def9cbf8b2aee2e 100644 (file)
@@ -1438,7 +1438,7 @@ int tts_add_silent_utterance(tts_h tts, unsigned int duration_in_msec, int* utt_
        RETVM_IF(false == tts_core_check_screen_reader(client), TTS_ERROR_SCREEN_READER_OFF, "[ERROR] Screen reader option is not available");
        RETVM_IF(false == tts_core_check_credential(client), TTS_ERROR_PERMISSION_DENIED, "[ERROR] Do not have app credential for this engine");
 
-       if (duration_in_msec < 0) {
+       if (duration_in_msec <= 0) {
                SLOG(LOG_ERROR, TAG_TTSC, "[ERROR] Fail to add silent. The duration of silent should be above than zero.");
                return TTS_ERROR_INVALID_PARAMETER;
        }
index bcd6d540713ecd6ccf253785a67e65217afbf0c6..58c81d898b4463a84fe06eb82c9aa962446eb476 100644 (file)
@@ -33,7 +33,10 @@ AudioStream::AudioStream():
        mState(AUDIO_STATE_NONE)
 {
        createSoundStreamInfo();
-       createAudioHandle(mAudioType, mAudioRate);
+       int ret = createAudioHandle(mAudioType, mAudioRate);
+       if (TTSD_ERROR_NONE != ret) {
+               SLOG(LOG_ERROR, tts_tag(), "[AudioStream] Fail to create the audio handle. ret(%s)", get_error_message(ret));
+       }
 }
 
 AudioStream::~AudioStream()
index ed7bfca7d89731ffc91d6c8f136e259529795590..c1c91e4ce5b161f610e704e9d9c13aaf40c90fbd 100644 (file)
@@ -188,6 +188,8 @@ static void __synthesis(unsigned int uid)
                        __stop_and_send_ready_state(uid);
                        ttsd_data_destroy_speak_data(speak_data);
                        speak_data = NULL;
+                       free(credential);
+                       credential = NULL;
                        return;
                }
 
@@ -258,9 +260,14 @@ static bool __generate_silent(long duration_in_msec)
        sound_data_s* sound_data_start = ttsd_data_create_sound_data(g_utt.uttid, data, bytes, TTSE_RESULT_EVENT_START, audio_type, sample_rate, 0);
        if (NULL == sound_data_start) {
                SLOG(LOG_ERROR, tts_tag(), "[SERVER ERROR] Out of memory");
+               free(data);
+               data = NULL;
                return false;
        }
 
+       free(data);
+       data = NULL;
+
        if (0 != ttsd_data_add_sound_data(g_utt.uid, sound_data_start)) {
                SECURE_SLOG(LOG_ERROR, tts_tag(), "[SERVER ERROR] Fail to add sound data : uid(%u)", g_utt.uid);
                ttsd_data_destroy_sound_data(sound_data_start);