X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftty%2Ftty_update.c;fp=ncurses%2Ftty%2Ftty_update.c;h=4e43e2b016843ce0422ccba50c057a540153967b;hp=16811f5e58ec79c5c68cd8799e9c22d13e53a664;hb=90d42867e1296bc79021006a92032c76e59068b6;hpb=dcfe712cb3492636e8d50c9867cf05aec089a576 diff --git a/ncurses/tty/tty_update.c b/ncurses/tty/tty_update.c index 16811f5e..4e43e2b0 100644 --- a/ncurses/tty/tty_update.c +++ b/ncurses/tty/tty_update.c @@ -43,6 +43,8 @@ * *-----------------------------------------------------------------*/ +#define NEW_PAIR_INTERNAL 1 + #include #ifndef CUR @@ -82,7 +84,7 @@ #include -MODULE_ID("$Id: tty_update.c,v 1.286 2017/02/12 17:15:15 tom Exp $") +MODULE_ID("$Id: tty_update.c,v 1.287 2017/02/28 22:13:45 tom Exp $") /* * This define controls the line-breakout optimization. Every once in a @@ -578,14 +580,15 @@ can_clear_with(NCURSES_SP_DCLx ARG_CH_T ch) if (!SP_PARM->_default_color) return FALSE; - if (SP_PARM->_default_fg != C_MASK || SP_PARM->_default_bg != C_MASK) + if (!(isDefaultColor(SP_PARM->_default_fg) && + isDefaultColor(SP_PARM->_default_bg))) return FALSE; if ((pair = GetPair(CHDEREF(ch))) != 0) { NCURSES_COLOR_T fg, bg; if (NCURSES_SP_NAME(pair_content) (NCURSES_SP_ARGx (short) pair, &fg, &bg) == ERR - || (fg != C_MASK || bg != C_MASK)) { + || !(isDefaultColor(fg) && isDefaultColor(bg))) { return FALSE; } } @@ -1345,8 +1348,8 @@ TransformLine(NCURSES_SP_DCLx int const lineno) && unColor(oldLine[n]) == unColor(newLine[n])) { if (oldPair < SP_PARM->_pair_limit && newPair < SP_PARM->_pair_limit - && (SP_PARM->_color_pairs[oldPair] == - SP_PARM->_color_pairs[newPair])) { + && (isSamePair(SP_PARM->_color_pairs[oldPair], + SP_PARM->_color_pairs[newPair]))) { SetPair(oldLine[n], GetPair(newLine[n])); } }