From 4c5f8816006512af4bc403fa6993b88b7ad94171 Mon Sep 17 00:00:00 2001 From: bzt Date: Wed, 23 Feb 2022 18:08:26 +0100 Subject: [PATCH] Fixed issue #31 strtok --- uefi/string.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/uefi/string.c b/uefi/string.c index 00fd5ec..e24a691 100644 --- a/uefi/string.c +++ b/uefi/string.c @@ -214,10 +214,10 @@ char_t *_strtok_r(char_t *s, const char_t *d, char_t **p) char_t *tok, *sp; if(d == NULL || (s == NULL && (s=*p) == NULL)) return NULL; - +again: c = *s++; for(sp = (char_t *)d; (sc=*sp++)!=0;) { - if(c == sc) { *p=s; *(s-1)=0; return s-1; } + if(c == sc) goto again; } if (c == 0) { *p=NULL; return NULL; } @@ -239,7 +239,7 @@ char_t *_strtok_r(char_t *s, const char_t *d, char_t **p) char_t *strtok(char_t *s, const char_t *delim) { - char_t *p = s; + static char_t *p; return _strtok_r (s, delim, &p); }