From: Rich Felker Date: Wed, 9 Dec 2020 22:11:05 +0000 (-0500) Subject: use libc-internal malloc for newlocale/freelocale X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=1e4204d522670a1d8b8ab85f1cfefa960547e8af;p=musl use libc-internal malloc for newlocale/freelocale this is necessary for MT-fork correctness now that the code runs under locale lock. it would not be hard to avoid, but __get_locale is already using libc-internal malloc anyway. this can be reconsidered during locale overhaul later if needed. --- diff --git a/src/locale/freelocale.c b/src/locale/freelocale.c index 802b8bfe..385d1206 100644 --- a/src/locale/freelocale.c +++ b/src/locale/freelocale.c @@ -1,6 +1,11 @@ #include #include "locale_impl.h" +#define malloc undef +#define calloc undef +#define realloc undef +#define free __libc_free + void freelocale(locale_t l) { if (__loc_is_allocated(l)) free(l); diff --git a/src/locale/newlocale.c b/src/locale/newlocale.c index 12ae87d6..9ac3cd38 100644 --- a/src/locale/newlocale.c +++ b/src/locale/newlocale.c @@ -4,6 +4,11 @@ #include "locale_impl.h" #include "lock.h" +#define malloc __libc_malloc +#define calloc undef +#define realloc undef +#define free undef + static int default_locale_init_done; static struct __locale_struct default_locale, default_ctype_locale;