diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2006-11-24 21:55:55 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2006-11-24 21:55:55 +0000 |
commit | 3feb2fc535db445951314f57a8f7ecc460b456d9 (patch) | |
tree | e843dcb27558f2121d9b0ce351364aa07960610a /libbb | |
parent | d031ffa623203b1dc756a1e02e06f261fdc30872 (diff) | |
download | busybox-3feb2fc535db445951314f57a8f7ecc460b456d9.tar.gz |
tar: fix multiple -t and/or -v options handling.
do not process list of files to tar up in reverse order.
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/last_char_is.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/libbb/last_char_is.c b/libbb/last_char_is.c index 9194ac05f..80a6fe2e4 100644 --- a/libbb/last_char_is.c +++ b/libbb/last_char_is.c @@ -7,20 +7,19 @@ * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. */ -#include <string.h> #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. Also avoids a possible * space-hogging inline of strlen() per usage. */ -char * last_char_is(const char *s, int c) +char* last_char_is(const char *s, int c) { - char *sret = (char *)s; - if (sret) { - sret = strrchr(sret, c); - if(sret != NULL && *(sret+1) != 0) - sret = NULL; + char *sret; + if (s) { + sret = strrchr(s, c); + if (sret && !sret[1]) + return sret; } - return sret; + return NULL; } |