static pthread_mutex_t g_cynara_mutex = PTHREAD_MUTEX_INITIALIZER;
static bool g_err_callback_status = false;
+static bool g_all_result_callback_status = false;
/* for TTS feedback */
static int g_feedback_rate = 16000;
if (VC_ERROR_NONE != ret)
return ret;
+ RETVM_IF(NULL == rule, VC_ERROR_INVALID_PARAMETER, TAG_VCM, "[ERROR] Input parameter is NULL");
+
vc_state_e state;
if (0 != vc_mgr_client_get_client_state(&state)) {
SLOG(LOG_ERROR, TAG_VCM, "[ERROR] A handle is not available");
if (VC_ERROR_NONE != ret)
return ret;
+ vc_state_e state;
+ if (0 != vc_mgr_client_get_client_state(&state)) {
+ SLOG(LOG_ERROR, TAG_VCM, "[ERROR] A handle is not available");
+ return VC_ERROR_INVALID_STATE;
+ }
+
+ /* check state */
+ RETVM_IF(state != VC_STATE_READY, VC_ERROR_INVALID_STATE, TAG_VCM, "[ERROR] Invalid State: Current state(%d) is not 'Ready'", state);
+
vc_info_parser_set_demandable_client(NULL);
ret = vc_mgr_tidl_request_demandable_client(g_pid);
}
}
+ if (false == g_all_result_callback_status) {
+ SLOG(LOG_ERROR, TAG_VCM, "[ERROR] Not in all result callback");
+ return VC_ERROR_OPERATION_FAILED;
+ }
+
if (NULL != vc_cmd_list) {
int event = 0;
char* result_text = NULL;
vc_mgr_client_set_all_result(event, temp_text);
vc_mgr_client_use_callback();
+ g_all_result_callback_status = true;
cb_ret = all_callback(event, vc_cmd_list, temp_text, temp_message, all_user_data);
+ g_all_result_callback_status = false;
vc_mgr_client_not_use_callback();
if (true == vc_mgr_client_get_exclusive_command()) {