forked from enlightenment/terminology
improve debug for unhandled csi
This commit is contained in:
parent
f92fa733b5
commit
42e4fdfc59
|
@ -337,8 +337,9 @@ static int
|
||||||
_handle_esc_csi(Termpty *ty, const Eina_Unicode *c, Eina_Unicode *ce)
|
_handle_esc_csi(Termpty *ty, const Eina_Unicode *c, Eina_Unicode *ce)
|
||||||
{
|
{
|
||||||
Eina_Unicode *cc;
|
Eina_Unicode *cc;
|
||||||
int arg, i;
|
int arg, i, j;
|
||||||
Eina_Unicode buf[4096], *b;
|
Eina_Unicode buf[4096], *b;
|
||||||
|
char *pos;
|
||||||
|
|
||||||
cc = (Eina_Unicode *)c;
|
cc = (Eina_Unicode *)c;
|
||||||
b = buf;
|
b = buf;
|
||||||
|
@ -893,7 +894,7 @@ _handle_esc_csi(Termpty *ty, const Eina_Unicode *c, Eina_Unicode *ce)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!handled) ERR("unhandled '%c'", *cc);
|
if (!handled) goto unhandled;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'r':
|
case 'r':
|
||||||
|
@ -991,11 +992,25 @@ _handle_esc_csi(Termpty *ty, const Eina_Unicode *c, Eina_Unicode *ce)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
ERR("unhandled CSI '%c' (0x%02x)", *cc, *cc);
|
goto unhandled;
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
cc++;
|
cc++;
|
||||||
return cc - c;
|
return cc - c;
|
||||||
|
unhandled:
|
||||||
|
pos = (char *)buf;
|
||||||
|
|
||||||
|
for (j = 0; c + j <= cc && j < 100; j++)
|
||||||
|
{
|
||||||
|
if ((pos - (char*)buf) > 4096 - 15) break;
|
||||||
|
if ((c[j] < ' ') || (c[j] >= 0x7f))
|
||||||
|
pos += sprintf(pos, "\033[35m%08x\033[0m", c[j]);
|
||||||
|
else
|
||||||
|
pos += sprintf(pos, "%c", c[j]);
|
||||||
|
}
|
||||||
|
*pos = '\0';
|
||||||
|
ERR("unhandled CSI '%c': %s", *cc, (char*)buf);
|
||||||
|
cc++;
|
||||||
|
return cc - c;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
|
Loading…
Reference in New Issue