diff --git a/src/lib/elementary/elm_module.c b/src/lib/elementary/elm_module.c index 03f70dc032..a987c9e23c 100644 --- a/src/lib/elementary/elm_module.c +++ b/src/lib/elementary/elm_module.c @@ -190,8 +190,22 @@ _elm_module_unload(Elm_Module *m) if (m->module) { if (m->shutdown_func) m->shutdown_func(m); +#if defined(__APPLE__) && defined(__MACH__) + /* + * FIXME + * + * MacOS currently undergo a fatal issue on shutdown: dlsym() + * crashes. I still have no clue why... Sue to the imminent release, + * let's NOT shutdown the module. Do nothing... + * + * THIS IS A TERRIBLE KLUDGE. IT MUST NOT STAY AFTER THE RELEASE OCCURS! + * + * FIXME + */ +#else eina_module_unload(m->module); eina_module_free(m->module); +#endif m->module = NULL; } m->shutdown_func = NULL; diff --git a/src/lib/evas/common/evas_thread_render.c b/src/lib/evas/common/evas_thread_render.c index bbde81a657..2f3b291927 100644 --- a/src/lib/evas/common/evas_thread_render.c +++ b/src/lib/evas/common/evas_thread_render.c @@ -261,7 +261,21 @@ evas_thread_shutdown(void) } } +#if defined(__APPLE__) && defined(__MACH__) + /* + * FIXME + * + * MacOS currently undergo a fatal issue on shutdown: pthread_join() + * crashes. I still have no clue why... Sue to the imminent release, + * let's NOT join this thread: do nothing at all! + * + * THIS IS A TERRIBLE KLUDGE. IT MUST NOT STAY AFTER THE RELEASE OCCURS! + * + * FIXME + */ +#else eina_thread_join(evas_thread_worker); +#endif timeout_shutdown: eina_lock_free(&evas_thread_queue_lock); eina_condition_free(&evas_thread_queue_condition);