aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2020-07-19 20:49:22 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2020-07-19 20:49:22 +0200
commit79a4032eefe405a1e7d4a644614fcc4a07b98d88 (patch)
tree0b85959dc4eea1c1b9063acac8ce39ac775450fb
parent4468c569f7112f4f6892dad52fd784ef4c22c44e (diff)
downloadbusybox-w32-79a4032eefe405a1e7d4a644614fcc4a07b98d88.tar.gz
busybox-w32-79a4032eefe405a1e7d4a644614fcc4a07b98d88.tar.bz2
busybox-w32-79a4032eefe405a1e7d4a644614fcc4a07b98d88.zip
libbb: shrink last_char_is(), no longer allow NULL string argument
function old new delta last_char_is 40 28 -12 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--libbb/last_char_is.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/libbb/last_char_is.c b/libbb/last_char_is.c
index 918526e6c..fba05f974 100644
--- a/libbb/last_char_is.c
+++ b/libbb/last_char_is.c
@@ -11,14 +11,9 @@
11/* Find out if the last character of a string matches the one given */ 11/* Find out if the last character of a string matches the one given */
12char* FAST_FUNC last_char_is(const char *s, int c) 12char* FAST_FUNC last_char_is(const char *s, int c)
13{ 13{
14 if (s) { 14 if (!s[0])
15 size_t sz = strlen(s); 15 return NULL;
16 /* Don't underrun the buffer if the string length is 0 */ 16 while (s[1])
17 if (sz != 0) { 17 s++;
18 s += sz - 1; 18 return (*s == (char)c) ? (char *) s : NULL;
19 if ((unsigned char)*s == c)
20 return (char*)s;
21 }
22 }
23 return NULL;
24} 19}