summaryrefslogtreecommitdiff
path: root/src/libstddjb/byte_chr.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstddjb/byte_chr.c')
-rw-r--r--src/libstddjb/byte_chr.c23
1 files changed, 4 insertions, 19 deletions
diff --git a/src/libstddjb/byte_chr.c b/src/libstddjb/byte_chr.c
index 45ad543..d24e92d 100644
--- a/src/libstddjb/byte_chr.c
+++ b/src/libstddjb/byte_chr.c
@@ -1,26 +1,11 @@
/* ISC license. */
-#include <skalibs/config.h>
-#include <skalibs/bytestr.h>
-
-#ifndef SKALIBS_FLAG_REPLACE_LIBC
-
+#include <sys/types.h>
#include <string.h>
+#include <skalibs/bytestr.h>
-unsigned int byte_chr (char const *s, unsigned int n, int c)
+size_t byte_chr (char const *s, size_t n, int c)
{
register void *p = memchr(s, c, n) ;
- return p ? (unsigned int)((char *)p - s) : n ;
+ return p ? (char *)p - s : n ;
}
-
-#else
-
-unsigned int byte_chr (char const *s, unsigned int n, int c)
-{
- register unsigned int i = 0 ;
- register char ch = c ;
- for (; i < n && *s++ != ch ; i++) ;
- return i ;
-}
-
-#endif