diff options
Diffstat (limited to 'libc/misc')
-rw-r--r-- | libc/misc/wchar/wchar.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libc/misc/wchar/wchar.c b/libc/misc/wchar/wchar.c index 23638ea8f..a28cd8f94 100644 --- a/libc/misc/wchar/wchar.c +++ b/libc/misc/wchar/wchar.c @@ -1143,6 +1143,13 @@ int wcswidth(const wchar_t *pwcs, size_t n) { int count; wchar_t wc; + size_t i; + + for (i = 0 ; (i < n) && pwcs[i] ; i++) { + if (pwcs[i] != (pwcs[i] & 0x7f)) { + return -1; + } + } for (count = 0 ; n && (wc = *pwcs++) ; n--) { if (wc <= 0xff) { |