billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=a4a26de7c353d088d744766e1ea932ea1943de64
commit a4a26de7c353d088d744766e1ea932ea1943de64 Author: Boris Faure <bill...@gmail.com> Date: Sun May 28 22:49:39 2017 +0200 termptyesc: fix parsing size on xterm 50 command --- src/bin/termptyesc.c | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/bin/termptyesc.c b/src/bin/termptyesc.c index 918e9af..b47f8bc 100644 --- a/src/bin/termptyesc.c +++ b/src/bin/termptyesc.c @@ -1294,15 +1294,22 @@ _handle_xterm_50_command(Termpty *ty, char *s, int len) { - size_t i; - int size; - for (i = 0; i < (size_t)len - strlen(":size="); i++) + int pattern_len = strlen(":size="); + while (len > pattern_len) { - if (strncmp(s + i, ":size=", strlen(":size=")) == 0) + if (strncmp(s, ":size=", pattern_len) == 0) { - size = strtol(s + i + strlen(":size="), NULL, 10); - termio_font_size_set(ty->obj, size); + char *endptr = NULL; + int size; + + s += pattern_len; + errno = 0; + size = strtol(s, &endptr, 10); + if (endptr != s && errno == 0) + termio_font_size_set(ty->obj, size); } + len--; + s++; } } --