X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=madtty%2Fmadtty.c;h=95ea5e2564f7819f0498db82edce8c0c79db0a46;hb=05d69048eb7e641221e29df9405741c4bc7dfd59;hp=89944542b17a31eb767bc7f221bce0ac2fcc45fc;hpb=dc1e2fe77a99263de102a8e1d8819e929339a7bb;p=apps%2Fmadtty.git diff --git a/madtty/madtty.c b/madtty/madtty.c index 8994454..95ea5e2 100644 --- a/madtty/madtty.c +++ b/madtty/madtty.c @@ -24,7 +24,6 @@ #include #include #include -#include #include #include #include @@ -33,9 +32,19 @@ #include #include #include - +#ifdef __linux__ +# include +#elif defined(__FreeBSD__) +# include +#elif defined(__OpenBSD__) +# include +#endif #include "madtty.h" +#ifndef NCURSES_ATTR_SHIFT +# define NCURSES_ATTR_SHIFT 8 +#endif + #define IS_CONTROL(ch) !((ch) & 0xffffff60UL) static int has_default = 0; @@ -612,6 +621,17 @@ static void try_interpret_escape_seq(madtty_t *t) if (t->elen + 1 >= (int)sizeof(t->ebuf)) { cancel: +#ifndef NDEBUG + fprintf(stderr, "cancelled: \\033"); + for (int i = 0; i < (int)t->elen; i++) { + if (isprint(t->ebuf[i])) { + fputc(t->ebuf[i], stderr); + } else { + fprintf(stderr, "\\%03o", t->ebuf[i]); + } + } + fputc('\n', stderr); +#endif cancel_escape_sequence(t); } }