diff options
author | Rich Felker <dalias@aerifal.cx> | 2011-04-13 08:36:29 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2011-04-13 08:36:29 -0400 |
commit | 6597f9ac133fd4f47dea307d6260fd52eae77816 (patch) | |
tree | 980c26e132ffeb5f1d6d5a8bec383c61cb0550bf /src/string/strrchr.c | |
parent | 750b738e53f799443fcfcd3a0751318c072a022f (diff) | |
download | musl-6597f9ac133fd4f47dea307d6260fd52eae77816.tar.gz |
implement memrchr (nonstandard) and optimize strrchr in terms of it
Diffstat (limited to 'src/string/strrchr.c')
-rw-r--r-- | src/string/strrchr.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/string/strrchr.c b/src/string/strrchr.c index 31c8e0b8..9c683087 100644 --- a/src/string/strrchr.c +++ b/src/string/strrchr.c @@ -1,9 +1,8 @@ #include <string.h> +void *__memrchr(const void *, int, size_t); + char *strrchr(const char *s, int c) { - const char *p; - c = (char)c; - for (p=s+strlen(s); p>=s && *p!=c; p--); - return p>=s ? (char *)p : 0; + return __memrchr(s, c, strlen(s)); } |