diff options
-rw-r--r-- | host/matelight/main.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/host/matelight/main.c b/host/matelight/main.c index 6a714a8..8ea7fc0 100644 --- a/host/matelight/main.c +++ b/host/matelight/main.c @@ -28,15 +28,16 @@ int console_render(char *s, glyph_t **glyph_table, unsigned int glyph_table_size goto error; } for(;;){ - if(*p == '\033'){ + while(*p == '\033'){ p++; // Jump over escape sequences for(;;p++){ - if(!(*p == ';' || *p == '[' || ('0' < *p && *p < '9'))){ + if(!(*p == ';' || *p == '[' || ('0' <= *p && *p <= '9'))){ p++; break; } } + memset(&ps, 0, sizeof(mbstate_t)); } size_t inc = mbrtowc(&c, p, MB_CUR_MAX, &ps); // MB_CUR_MAX is safe since p is \0-terminated |