X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=src%2Flocale%2Fuselocale.c;h=0fc5ecbc07f29437e1afb66815074360bfd360cb;hb=d055e6a45a17673b8dd3ec16e786bb2fe1700dd5;hp=510679575944dd1cfe04589d3e2b1b9f547c60ba;hpb=0bc03091bb674ebb9fa6fe69e4aec1da3ac484f2;p=musl diff --git a/src/locale/uselocale.c b/src/locale/uselocale.c index 51067957..0fc5ecbc 100644 --- a/src/locale/uselocale.c +++ b/src/locale/uselocale.c @@ -8,17 +8,7 @@ locale_t __uselocale(locale_t new) locale_t old = self->locale; locale_t global = &libc.global_locale; - if (new == LC_GLOBAL_LOCALE) new = global; - - if (new && new != old) { - int adj = 0; - if (new == global) a_dec(&libc.uselocale_cnt); - else if (!new->ctype_utf8) adj++; - if (old == global) a_inc(&libc.uselocale_cnt); - else if (!old->ctype_utf8) adj--; - a_fetch_add(&libc.bytelocale_cnt_minus_1, adj); - self->locale = new; - } + if (new) self->locale = new == LC_GLOBAL_LOCALE ? global : new; return old == global ? LC_GLOBAL_LOCALE : old; }