Add to init mutex of state 15/144415/1 accepted/tizen/unified/20170818.001006 submit/tizen/20170816.091600 submit/tizen/20170816.130636
authorYoungHun Kim <yh8004.kim@samsung.com>
Wed, 16 Aug 2017 12:53:19 +0000 (21:53 +0900)
committerYoungHun Kim <yh8004.kim@samsung.com>
Wed, 16 Aug 2017 12:54:08 +0000 (21:54 +0900)
Change-Id: I8c5716bfce7fb4b0a17b974c468c47b2b3c146e6

packaging/mused.spec
src/muse_core.c
src/muse_core_watchdog.c
src/muse_core_workqueue.c

index b5a2e6f..d510f45 100644 (file)
@@ -1,6 +1,6 @@
 Name:       mused
 Summary:    A Multimedia Daemon in Tizen Native API
-Version:    0.2.2
+Version:    0.2.3
 Release:    3
 Group:      System/Libraries
 License:    Apache-2.0
index dc213db..edc748c 100644 (file)
@@ -171,6 +171,7 @@ static void _muse_core_create_new_server_from_fd(int fd[], int type)
        server->stop = 0;
        server->retval = 0;
        g_mutex_init(&server->g_muse_core_lock);
+       g_mutex_init(&server->g_muse_server_state_lock);
 
        /*initiate server */
        g_atomic_int_set(&server->running, 1);
@@ -178,7 +179,6 @@ static void _muse_core_create_new_server_from_fd(int fd[], int type)
        for (i = 0; i < MUSE_CHANNEL_MAX; i++) {
                if (!_muse_core_attach_server(fd[i], _muse_core_connection_handler, (gpointer)(intptr_t) i)) {
                        LOGE("Fail to attach server fd %d", fd[i]);
-                       muse_core_main_thread_lock();
                        muse_core_respawn(SIGABRT);
                        return;
                }
@@ -204,7 +204,7 @@ static int _muse_core_free(void)
 
 #ifdef MUSE_USE_WATCHDOG
        if (muse_core_watchdog_deinit(server->watchdog) == MM_ERROR_NONE)
-               server->watchdog = NULL;
+               MUSE_FREE(server->watchdog);
        else
                LOGE("Fail to deinitialize server watchdog");
 #endif
@@ -219,6 +219,7 @@ static int _muse_core_free(void)
        remove(MUSE_DEFAULT_PIDFILE);
 
        g_mutex_clear(&server->g_muse_core_lock);
+       g_mutex_clear(&server->g_muse_server_state_lock);
 
        free(server);
        server = NULL;
index e5fb125..3d730d3 100644 (file)
@@ -62,7 +62,6 @@ static gpointer _muse_core_watchdog_thread(gpointer data)
 
                if (try_count >= MUSE_CORE_WATCHDOG_CHECK_COUNT) {
                        LOGE("NO RESPONSE FOR MAINLOOP");
-                       muse_core_main_thread_lock();
                        muse_core_respawn(SIGABRT);
                }
 
index 1597d26..0eb5452 100644 (file)
@@ -61,7 +61,6 @@ static void *_muse_core_workqueue_worker_function(void *ptr)
                /* Execute the job. */
                if (job->job_function(job) != TRUE) {
                        LOGE("Error - Execute the job, Restart muse server...");
-                       muse_core_main_thread_lock();
                        muse_core_respawn(SIGABRT);
                        break;
                }