diff options
author | keichii <keichii@FreeBSD.org> | 2002-08-16 13:45:23 +0000 |
---|---|---|
committer | keichii <keichii@FreeBSD.org> | 2002-08-16 13:45:23 +0000 |
commit | 99fd6cbd411805765c0684e119cb525a9c17d100 (patch) | |
tree | 7cf8a3328283357c9e60eb26cfb6a7eb04c256b5 /lib/libc/locale/iswctype.c | |
parent | 74943c8903a3a81bf7cbeca7f906cbae26802fa8 (diff) | |
download | FreeBSD-src-99fd6cbd411805765c0684e119cb525a9c17d100.zip FreeBSD-src-99fd6cbd411805765c0684e119cb525a9c17d100.tar.gz |
Add iswctype wcwidth function code
Submitted by: clkao@clkao.org
Reviewed by: keichii
Obtained from: NetBSD
MFC after: 1 month
Diffstat (limited to 'lib/libc/locale/iswctype.c')
-rw-r--r-- | lib/libc/locale/iswctype.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/libc/locale/iswctype.c b/lib/libc/locale/iswctype.c index ef6d4b5..7e7b3b9 100644 --- a/lib/libc/locale/iswctype.c +++ b/lib/libc/locale/iswctype.c @@ -211,3 +211,13 @@ towupper(wc) { return (__toupper(wc)); } + +#undef wcwidth +int +wcwidth(wc) + wchar_t wc; +{ + int width = (unsigned)__maskrune((wc), _CTYPE_SWM) >> _CTYPE_SWS; + return width ? width : iswprint(wc); +} + |