From f0d6c0fffc679e8ee49c2a9529b0c067b2326b47 Mon Sep 17 00:00:00 2001 From: John Marshall Date: Thu, 21 Sep 2023 08:08:05 +1200 Subject: [PATCH] Apply memchr optimisation in the general delimiter case too --- kseq.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kseq.h b/kseq.h index 99c9ea2..81cc774 100644 --- a/kseq.h +++ b/kseq.h @@ -111,8 +111,8 @@ typedef struct __kstring_t { unsigned char *sep = memchr(ks->buf + ks->begin, '\n', ks->end - ks->begin); \ i = sep != NULL ? sep - ks->buf : ks->end; \ } else if (delimiter > KS_SEP_MAX) { \ - for (i = ks->begin; i < ks->end; ++i) \ - if (ks->buf[i] == delimiter) break; \ + unsigned char *sep = memchr(ks->buf + ks->begin, delimiter, ks->end - ks->begin); \ + i = sep != NULL ? sep - ks->buf : ks->end; \ } else if (delimiter == KS_SEP_SPACE) { \ for (i = ks->begin; i < ks->end; ++i) \ if (isspace(ks->buf[i])) break; \ -- 2.47.3