diff options
| author | Andrey A. Chernov <ache@FreeBSD.org> | 1996-08-13 17:03:18 +0000 | 
|---|---|---|
| committer | Andrey A. Chernov <ache@FreeBSD.org> | 1996-08-13 17:03:18 +0000 | 
| commit | c2bfae006a3feffafec5acb8e4ae77829b6f025f (patch) | |
| tree | ac378725cfdd0263fb218296c9c0d68e408c1e7a /lib/libc/string/strxfrm.c | |
| parent | aba3a4ce1b9b62bb4aeb58db96162554322460c3 (diff) | |
Notes
Diffstat (limited to 'lib/libc/string/strxfrm.c')
| -rw-r--r-- | lib/libc/string/strxfrm.c | 22 | 
1 files changed, 5 insertions, 17 deletions
| diff --git a/lib/libc/string/strxfrm.c b/lib/libc/string/strxfrm.c index 236c3ac700ce..6031674e2034 100644 --- a/lib/libc/string/strxfrm.c +++ b/lib/libc/string/strxfrm.c @@ -29,7 +29,6 @@  #include <stdlib.h>  #include <string.h> -#include <ctype.h>  #include "collate.h"  size_t @@ -51,25 +50,14 @@ strxfrm(dest, src, len)  	if (__collate_load_error) {  		size_t slen = strlen(src); -		u_char *us; -		if (slen < len) +		if (slen < len) {  			strcpy(d, src); -		else { -			slen = len - 1; -			strncpy(d, src, slen); -			d[slen] = '\0'; +			return slen;  		} -		for (us = d; *us; us++) { -			if (isupper(*us)) { -				if (tolower(*us) < *us) -					*us = tolower(*us) - 1; -					/* assume it not started from 0 */ -				else -					*us = tolower(*us); -			} -		} -		return slen; +		strncpy(d, src, len - 1); +		d[len - 1] = '\0'; +		return len - 1;  	}  	ss = s = __collate_substitute(src); | 
