Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tools lib string: Adopt prefixcmp() from perf and subcmd

Both had copies originating from git.git, move those to
tools/lib/string.c, getting both tools/lib/subcmd/ and tools/perf/ to
use it.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-uidwtticro1qhttzd2rkrkg1@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

+13 -20
+2
tools/include/linux/string.h
··· 18 18 19 19 char *str_error_r(int errnum, char *buf, size_t buflen); 20 20 21 + int prefixcmp(const char *str, const char *prefix); 22 + 21 23 #endif /* _LINUX_STRING_H_ */
+9
tools/lib/string.c
··· 87 87 } 88 88 return ret; 89 89 } 90 + 91 + int prefixcmp(const char *str, const char *prefix) 92 + { 93 + for (; ; str++, prefix++) 94 + if (!*prefix) 95 + return 0; 96 + else if (*str != *prefix) 97 + return (unsigned char)*prefix - (unsigned char)*str; 98 + }
+1
tools/lib/subcmd/help.c
··· 1 1 #include <stdio.h> 2 2 #include <stdlib.h> 3 3 #include <string.h> 4 + #include <linux/string.h> 4 5 #include <termios.h> 5 6 #include <sys/ioctl.h> 6 7 #include <sys/types.h>
+1
tools/lib/subcmd/parse-options.c
··· 1 1 #include <linux/compiler.h> 2 + #include <linux/string.h> 2 3 #include <linux/types.h> 3 4 #include <stdio.h> 4 5 #include <stdlib.h>
-9
tools/lib/subcmd/subcmd-util.h
··· 79 79 free(tmp); 80 80 } 81 81 82 - static inline int prefixcmp(const char *str, const char *prefix) 83 - { 84 - for (; ; str++, prefix++) 85 - if (!*prefix) 86 - return 0; 87 - else if (*str != *prefix) 88 - return (unsigned char)*prefix - (unsigned char)*str; 89 - } 90 - 91 82 #endif /* __SUBCMD_UTIL_H */
-9
tools/perf/util/strbuf.c
··· 3 3 #include <linux/kernel.h> 4 4 #include <errno.h> 5 5 6 - int prefixcmp(const char *str, const char *prefix) 7 - { 8 - for (; ; str++, prefix++) 9 - if (!*prefix) 10 - return 0; 11 - else if (*str != *prefix) 12 - return (unsigned char)*prefix - (unsigned char)*str; 13 - } 14 - 15 6 /* 16 7 * Used as the default ->buf value, so that people can always assume 17 8 * buf is non NULL and ->buf is NUL terminated even for a freshly
-2
tools/perf/util/util.h
··· 30 30 31 31 void set_warning_routine(void (*routine)(const char *err, va_list params)); 32 32 33 - int prefixcmp(const char *str, const char *prefix); 34 - 35 33 static inline void *zalloc(size_t size) 36 34 { 37 35 return calloc(1, size);