diff options
| -rw-r--r-- | source3/lib/util_unistr.c | 12 | 
1 files changed, 6 insertions, 6 deletions
diff --git a/source3/lib/util_unistr.c b/source3/lib/util_unistr.c index 5d4697e441..44e792a9fd 100644 --- a/source3/lib/util_unistr.c +++ b/source3/lib/util_unistr.c @@ -52,23 +52,23 @@ void load_case_tables(void)  	if (!upcase_table) {  		DEBUG(1,("creating lame upcase table\n"));  		upcase_table = malloc(0x20000); -		for (i=0;i<256;i++) upcase_table[i] = UCS2_CHAR(islower(i)?toupper(i):i); -		for (;i<0x10000;i++) upcase_table[i] = UCS2_CHAR(i); +		for (i=0;i<0x10000;i++) upcase_table[i] = i; +		for (i=0;i<256;i++) upcase_table[UCS2_CHAR(i)] = UCS2_CHAR(islower(i)?toupper(i):i);  	}  	if (!lowcase_table) {  		DEBUG(1,("creating lame lowcase table\n"));  		lowcase_table = malloc(0x20000); -		for (i=0;i<256;i++) lowcase_table[i] = UCS2_CHAR(isupper(i)?tolower(i):i); -		for (;i<0x10000;i++) lowcase_table[i] = UCS2_CHAR(i); +		for (i=0;i<0x10000;i++) upcase_table[i] = i; +		for (i=0;i<256;i++) lowcase_table[UCS2_CHAR(i)] = UCS2_CHAR(isupper(i)?tolower(i):i);  	}  	if (!valid_table) {  		const char *allowed = "!#$%&'()_-@^`~";  		DEBUG(1,("creating lame valid table\n"));  		valid_table = malloc(0x10000); -		for (i=0;i<256;i++) valid_table[i] = UCS2_CHAR(isalnum(i) || strchr(allowed,i)); -		for (;i<0x10000;i++) valid_table[i] = 0; +		for (0;i<0x10000;i++) valid_table[i] = 0; +		for (i=0;i<256;i++) valid_table[UCS2_CHAR(i)] = isalnum(i) || strchr(allowed,i);  	}  }  | 
