Name: mused
Summary: A multimedia daemon
-Version: 0.3.49
+Version: 0.3.50
Release: 0
Group: System/Libraries
License: Apache-2.0
void ms_deinit_bufmgr(void);
void ms_cmd_dispatch_foreach_func(gpointer data, gpointer user_data);
void ms_set_state(ms_state_e state);
+void ms_set_running(gboolean value);
+gboolean ms_is_running(void);
#ifdef __cplusplus
}
if (caution_instance != DEFAULT_CAUTION_INSTANCE && connection->instance_count[m->idx] > caution_instance) {
LOGI("[MUSE_MODULE_COMMAND_CREATE_CAUTION] player # %d | camera # %d | recorder # %d > %d",
- connection->instance_count[MUSE_PLAYER], connection->instance_count[MUSE_CAMERA], connection->instance_count[MUSE_RECORDER], caution_instance);
+ connection->instance_count[MUSE_PLAYER], connection->instance_count[MUSE_CAMERA],
+ connection->instance_count[MUSE_RECORDER], caution_instance);
ms_cmd_dispatch(m, MUSE_MODULE_COMMAND_CREATE_CAUTION);
}
}
idx = 0;
m->msg_offset = 0;
- while (m->msg_offset < len) {
+ while (m->msg_offset < len && ms_is_running()) {
jobj = muse_core_msg_object_new(m->recv_msg + m->msg_offset, &parse_len, NULL);
if (!jobj) {
LOGE("jobj is null");
LOGD("Enter");
g_return_val_if_fail(job, FALSE);
+ g_return_val_if_fail(ms_is_running(), FALSE);
m = (muse_module_h)job->user_data;
g_return_val_if_fail(m, FALSE);
LOGD("Enter");
g_return_val_if_fail(job, FALSE);
+ g_return_val_if_fail(ms_is_running(), FALSE);
m = (muse_module_h)job->user_data;
g_return_val_if_fail(m, FALSE);
gettimeofday(&muse_server->tv_s, NULL);
/*initiate server */
- g_atomic_int_set(&muse_server->running, 1);
+ ms_set_running(TRUE);
for (i = 0; i < MUSE_CHANNEL_MAX; i++) {
if (!_ms_attach(fd[i], _ms_connection_handler, (gpointer)(intptr_t) i)) {
g_mutex_unlock(&muse_server->state_lock);
}
+void ms_set_running(gboolean value)
+{
+ g_atomic_int_set(&muse_server->running, value);
+}
+
+gboolean ms_is_running(void)
+{
+ return (gboolean)g_atomic_int_get(&ms_get_instance()->running);
+}
+
LOGD("signo(%d)", signo);
+ ms_set_running(FALSE);
+
switch (signo) {
case SIGSEGV:
sigaction(SIGSEGV, &ms_segv_old_action, NULL);
}
raise(signo);
-
}
static void _ms_signal_debug_pid_info(int pid)
LOGE("backtrace error: %s", err_msg);
}
- uctxt = (ucontext_t *) arg;
+ uctxt = (ucontext_t *)arg;
if (!uctxt) {
LOGE("Error - null uctxt");