X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftty%2Ftty_update.c;h=3addd02e745717ef290c12c7887c9e7b583cdc89;hp=e9ad69811951f9831895fa162e710dd0f8b85eac;hb=f486c68b1efe3bab5739c3f464fde6685a52bee5;hpb=a1e63be290fce9e589bc57c9f753be09e8ac0cc7 diff --git a/ncurses/tty/tty_update.c b/ncurses/tty/tty_update.c index e9ad6981..3addd02e 100644 --- a/ncurses/tty/tty_update.c +++ b/ncurses/tty/tty_update.c @@ -82,7 +82,7 @@ #include -MODULE_ID("$Id: tty_update.c,v 1.274 2013/01/12 17:24:22 tom Exp $") +MODULE_ID("$Id: tty_update.c,v 1.276 2013/02/16 21:12:02 tom Exp $") /* * This define controls the line-breakout optimization. Every once in a @@ -491,11 +491,12 @@ can_clear_with(NCURSES_SP_DCLx ARG_CH_T ch) return FALSE; if ((pair = GetPair(CHDEREF(ch))) != 0) { short fg, bg; - NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx - (short) pair, - &fg, &bg); - if (fg != C_MASK || bg != C_MASK) + if (NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx + (short) pair, + &fg, &bg) == ERR + || (fg != C_MASK || bg != C_MASK)) { return FALSE; + } } #else if (AttrOfD(ch) & A_COLOR) @@ -1117,6 +1118,11 @@ ClrToEOS(NCURSES_SP_DCLx NCURSES_CH_T blank) row = SP_PARM->_cursrow; col = SP_PARM->_curscol; + if (row < 0) + row = 0; + if (col < 0) + col = 0; + UpdateAttrs(SP_PARM, blank); TPUTS_TRACE("clr_eos"); NCURSES_SP_NAME(tputs) (NCURSES_SP_ARGx