| OLD | NEW |
| 1 #include <strings.h> | 1 #include <strings.h> |
| 2 #include <ctype.h> | 2 #include <ctype.h> |
| 3 #include "libc.h" | 3 #include "libc.h" |
| 4 | 4 |
| 5 int strncasecmp(const char *_l, const char *_r, size_t n) | 5 int strncasecmp(const char* _l, const char* _r, size_t n) { |
| 6 { | 6 const unsigned char *l = (void *)_l, *r = (void *)_r; |
| 7 » const unsigned char *l=(void *)_l, *r=(void *)_r; | 7 if (!n--) |
| 8 » if (!n--) return 0; | 8 return 0; |
| 9 » for (; *l && *r && n && (*l == *r || tolower(*l) == tolower(*r)); l++, r
++, n--); | 9 for (; *l && *r && n && (*l == *r || tolower(*l) == tolower(*r)); |
| 10 » return tolower(*l) - tolower(*r); | 10 l++, r++, n--) |
| 11 ; |
| 12 return tolower(*l) - tolower(*r); |
| 11 } | 13 } |
| 12 | 14 |
| 13 int __strncasecmp_l(const char *l, const char *r, size_t n, locale_t loc) | 15 int __strncasecmp_l(const char* l, const char* r, size_t n, locale_t loc) { |
| 14 { | 16 return strncasecmp(l, r, n); |
| 15 » return strncasecmp(l, r, n); | |
| 16 } | 17 } |
| 17 | 18 |
| 18 weak_alias(__strncasecmp_l, strncasecmp_l); | 19 weak_alias(__strncasecmp_l, strncasecmp_l); |
| OLD | NEW |