diff options
Diffstat (limited to 'lib/string.c')
-rw-r--r-- | lib/string.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/string.c b/lib/string.c index 3206d0178296..cdd97f431ae2 100644 --- a/lib/string.c +++ b/lib/string.c | |||
@@ -313,12 +313,12 @@ EXPORT_SYMBOL(strchrnul); | |||
313 | */ | 313 | */ |
314 | char *strrchr(const char *s, int c) | 314 | char *strrchr(const char *s, int c) |
315 | { | 315 | { |
316 | const char *p = s + strlen(s); | 316 | const char *last = NULL; |
317 | do { | 317 | do { |
318 | if (*p == (char)c) | 318 | if (*s == (char)c) |
319 | return (char *)p; | 319 | last = s; |
320 | } while (--p >= s); | 320 | } while (*s++); |
321 | return NULL; | 321 | return (char *)last; |
322 | } | 322 | } |
323 | EXPORT_SYMBOL(strrchr); | 323 | EXPORT_SYMBOL(strrchr); |
324 | #endif | 324 | #endif |