}
static char* __get_engine_appid(int mode) {
- char* appid = NULL;
- appid = (char*)calloc(sizeof(char), 256);
+ if (NULL == g_engine_name) {
+ return NULL;
+ }
- if (NULL == appid || NULL == g_engine_name) {
+ char* appid = (char*)calloc(256, sizeof(char));
+ if (NULL == appid) {
return NULL;
}
- memset(appid, '\0', 256);
if (TTS_MODE_DEFAULT == mode) {
snprintf(appid, 256, "%s", g_engine_name);
} else if (TTS_MODE_NOTIFICATION == mode) {
snprintf(appid, 256, "%s-sr", g_engine_name);
} else if (TTS_MODE_INTERRUPT == mode) {
snprintf(appid, 256, "%s-interrupt", g_engine_name);
+ } else {
+ free(appid);
+ return NULL;
}
+
return appid;
}
LOGD("[DEBUG] user info");
if (NULL != home_dir) {
LOGD("[DEBUG] uid(%d), gid(%d), user_type(%s), home_dir(%s)", uid, gid, user_type, home_dir);
+ FREE(g_dir_config_base);
+ FREE(g_dir_home);
+ FREE(g_dir_engine_base);
+ FREE(g_dir_engine_info);
g_dir_config_base = (char*)calloc(strlen(home_dir) + 14, sizeof(char));
g_dir_home = (char*)calloc(strlen(home_dir) + 18, sizeof(char));
LOGE("[ERROR] Fail to make engine info file");
}
- FREE(g_dir_config_base)
- FREE(g_dir_home)
- FREE(g_dir_engine_base)
- FREE(g_dir_engine_info)
-
G_FREE(home_dir)
}
}
if (NULL != home_dir) {
+ FREE(g_dir_engine_info);
g_dir_engine_info = (char*)calloc(strlen(home_dir) + 34, sizeof(char));
if (NULL == g_dir_engine_info) {
gum_user_service_list_free(users);
}
G_FREE(home_dir)
- FREE(g_dir_engine_info)
}
G_FREE(user_type)
static int __get_private_cb(rpc_port_stub_tts_context_h context, int uid, const char *key, char **data, void *user_data)
{
SLOG(LOG_DEBUG, tts_tag(), ">>>>> TTS GET PRIVATE DATA");
- char *tmp = NULL;
+ char *tmp = NULL;
if (0 != ttsd_server_get_private_data(uid, key, &tmp)) {
- return -1;
+ free(tmp);
+ return TTSD_ERROR_OPERATION_FAILED;
}
*data = tmp;