-
DF240401-00513
[Cause]
The crach occurs during destroying semaphore lock when
multi-threads are processed(decoding).
In GraphicsMagick, InitialMagick() & DestroyMagick() functions
are not thread-safe.
[Solution]
So locker is added for GraphicsMagick.
Change-Id: Ia19a89dd32994aec5cda5bcdd13acbbf449da947
#include "mm_util_private.h"
#include "mm_util_magick.h"
+static GMutex gm_lock;
static bool __mm_util_check_rotation(mm_util_rotate_type_e rotation);
static void __mm_util_magick_fatal_error_handler(const ExceptionType excep, const char *reason, const char *message) MAGICK_FUNC_NORETURN;
static void __mm_util_init(ExceptionInfo *exception)
{
+ g_mutex_lock(&gm_lock);
+
InitializeMagick(NULL);
if (exception != NULL)
GetExceptionInfo(exception);
DestroyExceptionInfo(exception);
DestroyMagick();
+
+ g_mutex_unlock(&gm_lock);
}
static const char * __mm_util_get_map(mm_util_color_format_e format)
Name: libmm-utility
Summary: Multimedia Framework Utility Library
-Version: 0.4.16
+Version: 0.4.17
Release: 0
Group: System/Libraries
License: Apache-2.0