mirror of
https://github.com/sheumann/hush.git
synced 2024-11-13 14:06:21 +00:00
6a1d661036
last_char_is: sacrifice 9 bytes but avoid double-scan
25 lines
540 B
C
25 lines
540 B
C
/* vi: set sw=4 ts=4: */
|
|
/*
|
|
* busybox library eXtended function
|
|
*
|
|
* Copyright (C) 2001 Larry Doolittle, <ldoolitt@recycle.lbl.gov>
|
|
*
|
|
* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
|
|
*/
|
|
|
|
#include "libbb.h"
|
|
|
|
/* Find out if the last character of a string matches the one given.
|
|
* Don't underrun the buffer if the string length is 0.
|
|
*/
|
|
char* last_char_is(const char *s, int c)
|
|
{
|
|
if (s && *s) {
|
|
size_t sz = strlen(s) - 1;
|
|
s += sz;
|
|
if ( (unsigned char)*s == c)
|
|
return (char*)s;
|
|
}
|
|
return NULL;
|
|
}
|