summaryrefslogtreecommitdiff
path: root/apps/plugins/lua/strpbrk.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/lua/strpbrk.c')
-rw-r--r--apps/plugins/lua/strpbrk.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/apps/plugins/lua/strpbrk.c b/apps/plugins/lua/strpbrk.c
index 1e0491f779..efa9cbd2bb 100644
--- a/apps/plugins/lua/strpbrk.c
+++ b/apps/plugins/lua/strpbrk.c
@@ -1,11 +1,17 @@
1#include "rocklibc.h" 1#include "rocklibc.h"
2 2
3#undef strpbrk 3#undef strpbrk
4char *strpbrk(const char *s, const char *accept) { 4/* custom strbbrk allowing you to define search len of s*/
5 register int i,l=strlen(accept); 5const char *strpbrk_n(const char *s, int smax, const char *accept) {
6 for (; *s; s++) 6 register int i;
7 for (i=0; i<l; i++) 7 register const char *a = accept;
8 if (*s == accept[i]) 8 for (i=0; __likely(s[i] && i < smax); i++, a=accept)
9 return (char*)s; 9 while(__likely(a++[0]))
10 return 0; 10 if ((s[i] == a[0]))
11 return &s[i];
12 return NULL;
13}
14
15inline char *strpbrk(const char *s, const char *accept) {
16 return (char*)strpbrk_n(s, INT_MAX, accept);
11} 17}