diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2015-04-08 12:28:47 +0000 |
---|---|---|
committer | Laurent Bercot <ska-skaware@skarnet.org> | 2015-04-08 12:28:47 +0000 |
commit | 73ebb5709dc2a5aaee1e676a3c1b0bb7cebcd392 (patch) | |
tree | 5b90934904fa42b1b979b83bd223b3e94bf3676f /src/libstddjb/byte_chr.c | |
parent | 90767eae542f72b7069a3575bc55944cebc749b6 (diff) | |
download | skalibs-73ebb5709dc2a5aaee1e676a3c1b0bb7cebcd392.tar.xz |
- added str_nlen()
- various fixes for --enable-libc-replacements
Diffstat (limited to 'src/libstddjb/byte_chr.c')
-rw-r--r-- | src/libstddjb/byte_chr.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/src/libstddjb/byte_chr.c b/src/libstddjb/byte_chr.c index e9caef5..45ad543 100644 --- a/src/libstddjb/byte_chr.c +++ b/src/libstddjb/byte_chr.c @@ -17,17 +17,10 @@ unsigned int byte_chr (char const *s, unsigned int n, int c) unsigned int byte_chr (char const *s, unsigned int n, int c) { + register unsigned int i = 0 ; register char ch = c ; - register char const *t = s ; - - for (;;) - { - if (!n) break; if (*t == ch) break; ++t; --n; - if (!n) break; if (*t == ch) break; ++t; --n; - if (!n) break; if (*t == ch) break; ++t; --n; - if (!n) break; if (*t == ch) break; ++t; --n; - } - return t - s ; + for (; i < n && *s++ != ch ; i++) ; + return i ; } #endif |