Make sure the mutex unlocked before calling g_mutex_clear() 73/199673/1
authorSangyoon Jang <jeremy.jang@samsung.com>
Thu, 14 Feb 2019 03:04:09 +0000 (12:04 +0900)
committerSangyoon Jang <jeremy.jang@samsung.com>
Thu, 14 Feb 2019 03:04:09 +0000 (12:04 +0900)
Calling g_mutex_clear() on a locked mutex leads to undefined behaviour.

Change-Id: I90c1de3afe0ab9f0119980c1c8f603cffc26963a
Signed-off-by: Sangyoon Jang <jeremy.jang@samsung.com>
src/package_manager.c

index dec09cd..214ecda 100644 (file)
@@ -1026,6 +1026,8 @@ API int package_manager_destroy(package_manager_h manager)
                     NULL);
        }
 
+       g_mutex_trylock(&manager->mutex);
+       g_mutex_unlock(&manager->mutex);
        g_mutex_clear(&manager->mutex);
        pkgmgr_client_free(manager->pc);
        g_hash_table_destroy(manager->event_info_table);