X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftinfo%2Fcaptoinfo.c;fp=ncurses%2Ftinfo%2Fcaptoinfo.c;h=e02e622b0de3ee94ec710d9f08df26708656f6ce;hp=db46e2096903912075e52385c377ac0928ad632a;hb=938680fa3bc29d2a086031a2f648dfd6cadcb51e;hpb=925cd3b851aa2c58529dfaba8ed2c727e718a1e0 diff --git a/ncurses/tinfo/captoinfo.c b/ncurses/tinfo/captoinfo.c index db46e209..e02e622b 100644 --- a/ncurses/tinfo/captoinfo.c +++ b/ncurses/tinfo/captoinfo.c @@ -93,7 +93,7 @@ #include #include -MODULE_ID("$Id: captoinfo.c,v 1.75 2012/11/24 20:48:54 tom Exp $") +MODULE_ID("$Id: captoinfo.c,v 1.77 2012/12/30 00:50:40 tom Exp $") #define MAX_PUSHED 16 /* max # args we can push onto the stack */ @@ -532,10 +532,13 @@ save_tc_char(char *bufptr, int c1) bufptr = save_char(bufptr, '\\'); bufptr = save_char(bufptr, c1); } else { - if (c1 == (c1 & 0x1f)) /* iscntrl() returns T on 255 */ - _nc_STRCPY(temp, unctrl((chtype) c1), sizeof(temp)); - else - _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) "\\%03o", c1); + if (c1 == (c1 & 0x1f)) { /* iscntrl() returns T on 255 */ + _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) + "%.20s", unctrl((chtype) c1)); + } else { + _nc_SPRINTF(temp, _nc_SLIMIT(sizeof(temp)) + "\\%03o", c1); + } bufptr = save_string(bufptr, temp); } return bufptr;