Root/
Source at commit 1158 created 13 years 16 days ago. By azimutz, Match nvidia.c with the one on my branch (Chazi) adding dev id's from issue 99 and Asus G74SX (0DF4, 1251). | |
---|---|
1 | /*␊ |
2 | * strcasecmp.c␊ |
3 | */␊ |
4 | ␊ |
5 | #include <string.h>␊ |
6 | #include <ctype.h>␊ |
7 | ␊ |
8 | int strcasecmp(const char *s1, const char *s2)␊ |
9 | {␊ |
10 | ␉const unsigned char *c1 = (const unsigned char *)s1;␊ |
11 | ␉const unsigned char *c2 = (const unsigned char *)s2;␊ |
12 | ␉unsigned char ch;␊ |
13 | ␉int d = 0;␊ |
14 | ␊ |
15 | ␉while (1) {␊ |
16 | ␉␉/* toupper() expects an unsigned char (implicitly cast to int)␊ |
17 | ␉␉ as input, and returns an int, which is exactly what we want. */␊ |
18 | ␉␉d = toupper(ch = *c1++) - toupper(*c2++);␊ |
19 | ␉␉if (d || !ch)␊ |
20 | ␉␉␉break;␊ |
21 | ␉}␊ |
22 | ␊ |
23 | ␉return d;␊ |
24 | }␊ |
25 |