X-Git-Url: https://git.saurik.com/apple/libc.git/blobdiff_plain/1f2f436a38f7ae2d39a943ad2898d8fed4ed2e58..2acb89982f71719aec26ca16705bd2c0400a9550:/string/FreeBSD/wcswidth.c?ds=inline diff --git a/string/FreeBSD/wcswidth.c b/string/FreeBSD/wcswidth.c index 5a38012..447c8e5 100644 --- a/string/FreeBSD/wcswidth.c +++ b/string/FreeBSD/wcswidth.c @@ -38,20 +38,30 @@ #include __FBSDID("$FreeBSD: src/lib/libc/string/wcswidth.c,v 1.7 2007/01/09 00:28:12 imp Exp $"); +#include "xlocale_private.h" + #include int -wcswidth(const wchar_t *pwcs, size_t n) +wcswidth_l(const wchar_t *pwcs, size_t n, locale_t loc) { wchar_t wc; int len, l; + NORMALIZE_LOCALE(loc); len = 0; while (n-- > 0 && (wc = *pwcs++) != L'\0') { - if ((l = wcwidth(wc)) < 0) + if ((l = wcwidth_l(wc, loc)) < 0) return (-1); len += l; } return (len); } + +int +wcswidth(const wchar_t *pwcs, size_t n) +{ + return wcswidth_l(pwcs, n, __current_locale()); +} +