--- ../ncurses-5.6-orig/ncurses/tinfo/read_entry.c 2006-08-20 00:58:50 +0900 +++ ncurses/tinfo/read_entry.c 2007-12-22 22:43:55 +0900 @@ -75,6 +75,8 @@ Strings[i] = CANCELLED_STRING; } else if (LOW_MSB(buf + 2 * i) > size) { Strings[i] = ABSENT_STRING; + } else if (i==21 || i==29 || i==31 || i==41 || i==42 || i==52 || i==105 || i==108) { + Strings[i] = ABSENT_STRING; } else { Strings[i] = (LOW_MSB(buf + 2 * i) + table); TR(TRACE_DATABASE, ("Strings[%d] = %s", i, _nc_visbuf(Strings[i]))); --- ../ncurses-5.6-orig/ncurses/tty/tty_update.c 2006-11-26 07:33:21 +0900 +++ ncurses/tty/tty_update.c 2007-12-22 22:43:55 +0900 @@ -490,7 +490,7 @@ TR(TRACE_CHARPUT, ("EmitRange %d:%s", num, _nc_viscbuf(ntext, num))); - if (erase_chars || repeat_char) { + if (0 && (erase_chars || repeat_char)) { while (num > 0) { int runcount; NCURSES_CH_T ntext0; @@ -582,7 +582,7 @@ TR(TRACE_CHARPUT, ("PutRange(%p, %p, %d, %d, %d)", otext, ntext, row, first, last)); - if (otext != ntext + if (0 && otext != ntext && (last - first + 1) > SP->_inline_cost) { for (j = first, same = 0; j <= last; j++) { if (!same && isWidecExt(otext[j])) @@ -1324,7 +1324,7 @@ ClrToEOL(blank, FALSE); } else if ((nLastChar != oLastChar) && (!CharEq(newLine[nLastChar], oldLine[oLastChar]) - || !(_nc_idcok && has_ic()))) { + || 1 || !(_nc_idcok && has_ic()))) { GoTo(lineno, firstChar); if ((oLastChar - nLastChar) > SP->_el_cost) { if (PutRange(oldLine, newLine, lineno, firstChar, nLastChar))