diff options
Diffstat (limited to 'src/utf8code.c')
| -rw-r--r-- | src/utf8code.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/utf8code.c b/src/utf8code.c index 45f1613d..25244f07 100644 --- a/src/utf8code.c +++ b/src/utf8code.c @@ -48,10 +48,9 @@ unsigned utf8_encode(char *out, uint32_t c) uint32_t utf8_peek(const char* s, int pos) { int inc = -1; - if (pos > 0) - pos = -pos, inc = 1; - while (pos) - pos += (*(s += inc) & 0xC0) != 0x80; + if (pos > 0) pos = -pos, inc = 1; + while (pos) pos += (*(s += inc) & 0xC0) != 0x80; + utf8_decode_t d = {.state=0}; do { utf8_decode(&d, (uint8_t)*s++); } while (d.state); return d.codep; |
