diff --git a/src/mu-util.c b/src/mu-util.c index 25ece159..49471855 100644 --- a/src/mu-util.c +++ b/src/mu-util.c @@ -158,14 +158,18 @@ mu_util_init_system (void) setlocale (LC_ALL, ""); /* on FreeBSD, it seems g_slice_new and friends lead to - * segfaults. So we shut if off */ -#ifdef __FreeBSD__ + * segfaults. Same for MacOS. We cannot easily debug what is + * going on there (no access to such a system), so all we can + * do is add a lame fallback -> we let g_slice_* use normal + * malloc + */ +#ifndef __linux__ if (!g_setenv ("G_SLICE", "always-malloc", TRUE)) { g_critical ("cannot set G_SLICE"); return FALSE; } - MU_WRITE_LOG("setting G_SLICE to always-malloc"); -#endif /*__FreeBSD__*/ + /* g_debug ("setting G_SLICE to always-malloc"); */ +#endif /*!__linux__*/ g_type_init ();