diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 988c3955..b199bf56 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -96,9 +96,17 @@ _csi_arg_get(Eina_Unicode **ptr) if (!b) goto error; - while ((*b) && (*b < '0' || *b > '9')) + /* Skip potential '?', '>'.... */ + while ((*b) && ( (*b) != ';' && ((*b) < '0' || (*b) > '9'))) b++; + if (*b == ';') + { + b++; + *ptr = b; + return -1; + } + if (!*b) goto error; @@ -111,6 +119,11 @@ _csi_arg_get(Eina_Unicode **ptr) b++; } + if (*b == ';') + { + b++; + } + *ptr = b; return sum;