X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fctype%2Fiswspace.c;h=b0c0ae18cf225820891b050082b12266d135374f;hb=7ee48f7b69523c68768684551bc37ba05496c27f;hp=68a1743747c4cbdd04c08c7448cef478ae983301;hpb=0b44a0315b47dd8eced9f3b7f31580cf14bbfc01;p=musl diff --git a/src/ctype/iswspace.c b/src/ctype/iswspace.c index 68a17437..b0c0ae18 100644 --- a/src/ctype/iswspace.c +++ b/src/ctype/iswspace.c @@ -2,14 +2,17 @@ #include #include +/* Our definition of whitespace is the Unicode White_Space property, + * minus non-breaking spaces (U+00A0, U+2007, and U+202F) and script- + * specific characters with non-blank glyphs (U+1680 and U+180E). */ + int iswspace(wint_t wc) { static const wchar_t spaces[] = { ' ', '\t', '\n', '\r', 11, 12, 0x0085, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, - 0x2006, 0x2008, 0x2009, 0x200a, 0x200b, - 0x2028, 0x2029, 0x2050, 0x3000, 0 + 0x2006, 0x2008, 0x2009, 0x200a, + 0x2028, 0x2029, 0x205f, 0x3000, 0 }; - if (wcschr(spaces, wc)) return 1; - return 0; + return wc && wcschr(spaces, wc); }