libbb: shrink last_char_is(), no longer allow NULL string argument
No binary (build failed)
—
(log yok)
| @@ -11,14 +11,9 @@ | |
| /* Find out if the last character of a string matches the one given */ | |
| char* FAST_FUNC last_char_is(const char *s, int c) | |
| { | |
| - | if (s) { |
| - | size_t sz = strlen(s); |
| - | /* Don't underrun the buffer if the string length is 0 */ |
| - | if (sz != 0) { |
| - | s += sz - 1; |
| - | if ((unsigned char)*s == c) |
| - | return (char*)s; |
| - | } |
| - | } |
| - | return NULL; |
| + | if (!s[0]) |
| + | return NULL; |
| + | while (s[1]) |
| + | s++; |
| + | return (*s == (char)c) ? (char *) s : NULL; |
| } | |