From abca6ab6a13b4d728214a33a4c5547cc6e7b6b96 Mon Sep 17 00:00:00 2001 From: Enno Rehling Date: Sun, 2 Sep 2007 10:30:09 +0000 Subject: [PATCH] fixing the umlaut-check to run in UTF8 locales --- src/common/util/goodies.c | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/common/util/goodies.c b/src/common/util/goodies.c index 6a0ca72c5..32a61d940 100644 --- a/src/common/util/goodies.c +++ b/src/common/util/goodies.c @@ -23,7 +23,7 @@ #include "goodies.h" /* libc includes */ -#include +#include #include #include @@ -76,21 +76,21 @@ set_string (char **s, const char *neu) boolean locale_check(void) { - int i, errorlevel = 0; - unsigned char * umlaute = (unsigned char*)"äöüÄÖÜß"; - /* E: das prüft, ob umlaute funktionieren. Wenn äöü nicht mit isalpha() true sind, kriegen wir ärger. */ - for (i=0;i!=3;++i) { - if (toupper(umlaute[i])!=(int)umlaute[i+3]) { - ++errorlevel; - } - } - for (i=0;umlaute[i]!=0;++i) { - if (!isalpha(umlaute[i]) || isspace(umlaute[i]) || iscntrl(umlaute[i])) { - ++errorlevel; - } - } - if (errorlevel) return false; - return true; + int i, errorlevel = 0; + const unsigned char * umlaute = (const unsigned char*)"äöüÄÖÜß"; + /* E: das testet, ob umlaute funktionieren. Wenn äöü nicht mit isalpha() true sind, kriegen wir ärger. */ + for (i=0;i!=3;++i) { + if (towupper(umlaute[i])!=(int)umlaute[i+3]) { + ++errorlevel; + } + } + for (i=0;umlaute[i]!=0;++i) { + if (!iswalpha(umlaute[i]) || iswspace(umlaute[i]) || iswcntrl(umlaute[i])) { + ++errorlevel; + } + } + if (errorlevel) return false; + return true; } static int