Changeset View
Changeset View
Standalone View
Standalone View
head/lib/libc/locale/mbrlen.c
Show All 36 Lines | |||||
#include <wchar.h> | #include <wchar.h> | ||||
#include "mblocal.h" | #include "mblocal.h" | ||||
size_t | size_t | ||||
mbrlen_l(const char * __restrict s, size_t n, mbstate_t * __restrict ps, locale_t locale) | mbrlen_l(const char * __restrict s, size_t n, mbstate_t * __restrict ps, locale_t locale) | ||||
{ | { | ||||
FIX_LOCALE(locale); | FIX_LOCALE(locale); | ||||
if (ps == NULL) | if (ps == NULL) | ||||
ps = &locale->mbrlen; | ps = &(XLOCALE_CTYPE(locale)->mbrlen); | ||||
return (XLOCALE_CTYPE(locale)->__mbrtowc(NULL, s, n, ps)); | return (XLOCALE_CTYPE(locale)->__mbrtowc(NULL, s, n, ps)); | ||||
} | } | ||||
size_t | size_t | ||||
mbrlen(const char * __restrict s, size_t n, mbstate_t * __restrict ps) | mbrlen(const char * __restrict s, size_t n, mbstate_t * __restrict ps) | ||||
{ | { | ||||
return mbrlen_l(s, n, ps, __get_locale()); | return mbrlen_l(s, n, ps, __get_locale()); | ||||
} | } |