/*
-* Copyright (c) 2011-2014 Samsung Electronics Co., Ltd All Rights Reserved
+* Copyright (c) 2011-2016 Samsung Electronics Co., Ltd All Rights Reserved
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
/* Default language is STT_BASE_LANGUAGE */
if (0 == strcmp(STT_BASE_LANGUAGE, engine_lang)) {
*language = strdup(engine_lang);
- SLOG(LOG_DEBUG, stt_tag(), "Selected language : %s", *language);
+ SLOG(LOG_DEBUG, stt_tag(), "Selected language : %s", (NULL == *language) ? "NULL" : *language);
return 0;
}
}
/* Not support STT_BASE_LANGUAGE */
if (NULL != engine_lang) {
*language = strdup(engine_lang);
- SLOG(LOG_DEBUG, stt_tag(), "Selected language : %s", *language);
+ SLOG(LOG_DEBUG, stt_tag(), "Selected language : %s", (NULL == *language) ? "NULL" : *language);
return 0;
}
}
SLOG(LOG_ERROR, stt_tag(), "Current config info is NULL");
return STT_CONFIG_ERROR_OPERATION_FAILED;
}
-
+
/* Check current language */
if (NULL == g_config_info->language) {
SLOG(LOG_ERROR, stt_tag(), "Current config language is NULL");
return STT_CONFIG_ERROR_OPERATION_FAILED;
}
- if (false == callback(engine_info->uuid, engine_info->name,
+ if (false == callback(engine_info->uuid, engine_info->name,
engine_info->setting, engine_info->support_silence_detection, user_data)) {
break;
}
SLOG(LOG_DEBUG, stt_tag(), " %s", lang);
if (NULL != lang && NULL != g_config_info->language) {
- if (0 == strcmp(lang, g_config_info->language)) {
+ if (0 == strcmp(lang, g_config_info->language)) {
/* language is valid */
is_valid_lang = true;
if (false == is_valid_lang) {
if (NULL != g_config_info->language) {
free(g_config_info->language);
+ g_config_info->language = NULL;
iter_lang = g_slist_nth(engine_info->languages, 0);
+ if (NULL == iter_lang) {
+ SLOG(LOG_ERROR, stt_tag(), "Fail to get default language");
+ break;
+ }
+
lang = iter_lang->data;
g_config_info->language = strdup(lang);
/*Get handle data from list*/
lang = iter_lang->data;
- SLOG(LOG_DEBUG, stt_tag(), " %s", lang);
if (NULL != lang) {
+ SLOG(LOG_DEBUG, stt_tag(), " %s", lang);
if (false == callback(engine_info->uuid, lang, user_data))
break;
}
} else {
SLOG(LOG_ERROR, stt_tag(), " language is NONE");
}
- SLOG(LOG_DEBUG, stt_tag(), " silence support : %s",
+ SLOG(LOG_DEBUG, stt_tag(), " silence support : %s",
engine_info->support_silence_detection ? "true" : "false");
iter = g_slist_next(iter);
i++;
while (NULL != iter) {
data = iter->data;
- if (false == callback(data->index, data->event, data->text,
+ if (false == callback(data->index, data->event, data->text,
data->start_time, data->end_time, user_data)) {
break;
}