X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-wcwidth.c;h=582a8aa2e87a8235186aa3b1e402bbf03e6646a7;hb=c3788de0b891181a7d48421c7da2ca24d2678bbd;hp=fe1094f024d4a70c01742dce183e2067f64b8663;hpb=aa9089a1a26a2f012bb4392b9ee91e5e12667ab3;p=gnulib.git diff --git a/tests/test-wcwidth.c b/tests/test-wcwidth.c index fe1094f02..582a8aa2e 100644 --- a/tests/test-wcwidth.c +++ b/tests/test-wcwidth.c @@ -23,6 +23,9 @@ #include #include #include +#include + +#include "localcharset.h" #define ASSERT(expr) \ do \ @@ -30,6 +33,7 @@ if (!(expr)) \ { \ fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \ + fflush (stderr); \ abort (); \ } \ } \ @@ -45,7 +49,13 @@ main () ASSERT (wcwidth (wc) == 1); /* Switch to an UTF-8 locale. */ - if (setlocale (LC_ALL, "fr_FR.UTF-8") != NULL) + if (setlocale (LC_ALL, "fr_FR.UTF-8") != NULL + /* Check whether it's really an UTF-8 locale. + On OpenBSD 4.0, the setlocale call succeeds only for the LC_CTYPE + category and therefore returns "C/fr_FR.UTF-8/C/C/C/C", but the + LC_CTYPE category is effectively set to an ASCII LC_CTYPE category; + in particular, locale_charset() returns "ASCII". */ + && strcmp (locale_charset (), "UTF-8") == 0) { /* Test width of ASCII characters. */ for (wc = 0x20; wc < 0x7F; wc++)