X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Fstrcasecmp.c;h=c128f9b0afdda6876749f546d7d6293393783714;hp=04aad7d31f904db9b7cbaca402ae6ef1e3af73b3;hb=a485ed478abbd599d8c9aab48934e7a26733ecb1;hpb=f480c03187724e54e5391ee61b810827da319a6c diff --git a/sbr/strcasecmp.c b/sbr/strcasecmp.c index 04aad7d..c128f9b 100644 --- a/sbr/strcasecmp.c +++ b/sbr/strcasecmp.c @@ -1,4 +1,3 @@ - /* * strcasecmp.c -- compare strings, ignoring case * @@ -16,40 +15,40 @@ */ int -mh_strcasecmp (const char *s1, const char *s2) +mh_strcasecmp (const char *s1, const char *s2) { - const unsigned char *us1, *us2; - - us1 = (const unsigned char *) s1, - us2 = (const unsigned char *) s2; - - if (!us1) - us1 = ""; - if (!us2) - us2 = ""; - - while (tolower(*us1) == tolower(*us2++)) - if (*us1++ == '\0') - return (0); - return (tolower(*us1) - tolower(*--us2)); + const unsigned char *us1, *us2; + + us1 = (const unsigned char *) s1, + us2 = (const unsigned char *) s2; + + if (!us1) + us1 = ""; + if (!us2) + us2 = ""; + + while (tolower(*us1) == tolower(*us2++)) + if (*us1++ == '\0') + return (0); + return (tolower(*us1) - tolower(*--us2)); } - + int mh_strncasecmp (const char *s1, const char *s2, size_t n) { - const unsigned char *us1, *us2; - - if (n != 0) { - us1 = (const unsigned char *) s1, - us2 = (const unsigned char *) s2; - - do { - if (tolower(*us1) != tolower(*us2++)) - return (tolower(*us1) - tolower(*--us2)); - if (*us1++ == '\0') - break; - } while (--n != 0); - } - return (0); + const unsigned char *us1, *us2; + + if (n != 0) { + us1 = (const unsigned char *) s1, + us2 = (const unsigned char *) s2; + + do { + if (tolower(*us1) != tolower(*us2++)) + return (tolower(*us1) - tolower(*--us2)); + if (*us1++ == '\0') + break; + } while (--n != 0); + } + return (0); }