diff options
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 236c3ac..6031674 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); |