diff options
Diffstat (limited to 'string/bits/string2.h')
-rw-r--r-- | string/bits/string2.h | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/string/bits/string2.h b/string/bits/string2.h index 1caa81b403..09a49b6fff 100644 --- a/string/bits/string2.h +++ b/string/bits/string2.h @@ -1044,15 +1044,13 @@ __strtok_r_1c (char *__s, char __sep, char **__nextp) else { __result = __s; - while (*__s != '\0' && *__s != __sep) - ++__s; - if (*__s == '\0') - *__nextp = __s; - else - { - *__s = '\0'; - *__nextp = __s + 1; - } + while (*__s != '\0') + if (*__s++ == __sep) + { + __s[-1] = '\0'; + break; + } + *__nextp = __s; } return __result; } |