| /* Cross platform case insensitive string compare functions |
| */ |
| |
| #include "Python.h" |
| |
| int |
| PyOS_mystrnicmp(const char *s1, const char *s2, Py_ssize_t size) |
| { |
| if (size == 0) |
| return 0; |
| while ((--size > 0) && |
| (tolower((unsigned)*s1) == tolower((unsigned)*s2))) { |
| if (!*s1++ || !*s2++) |
| break; |
| } |
| return tolower((unsigned)*s1) - tolower((unsigned)*s2); |
| } |
| |
| int |
| PyOS_mystricmp(const char *s1, const char *s2) |
| { |
| while (*s1 && (tolower((unsigned)*s1++) == tolower((unsigned)*s2++))) { |
| ; |
| } |
| return (tolower((unsigned)*s1) - tolower((unsigned)*s2)); |
| } |