--- rxvt-unicode/src/init.C 2005/12/21 14:19:19 1.124 +++ rxvt-unicode/src/init.C 2005/12/21 23:40:07 1.126 @@ -36,6 +36,8 @@ #include "rxvtutil.h" #include "init.h" +#include + #include const char *const def_colorName[] = @@ -371,17 +373,17 @@ } if (rs[Rs_saveLines] && (i = atoi (rs[Rs_saveLines])) >= 0) - saveLines = min (i, MAX_POSITIVE_INT16); + saveLines = min (i, MAX_SAVELINES); #if ENABLE_FRILLS if (rs[Rs_int_bwidth] && (i = atoi (rs[Rs_int_bwidth])) >= 0) - int_bwidth = min (i, MAX_POSITIVE_INT16); + int_bwidth = min (i, std::numeric_limits::max ()); if (rs[Rs_ext_bwidth] && (i = atoi (rs[Rs_ext_bwidth])) >= 0) - ext_bwidth = min (i, MAX_POSITIVE_INT16); + ext_bwidth = min (i, std::numeric_limits::max ()); if (rs[Rs_lineSpace] && (i = atoi (rs[Rs_lineSpace])) >= 0) - lineSpace = min (i, MAX_POSITIVE_INT16); + lineSpace = min (i, std::numeric_limits::max ()); #endif #ifdef POINTER_BLANK @@ -1197,10 +1199,16 @@ */ if (GET_TERMIOS (STDIN_FILENO, tio) < 0) { - /* return error - use system defaults */ + // return error - use system defaults, + // where possible, and zero elsewhere + memset (tio, 0, sizeof (ttymode_t)); + tio->c_cc[VINTR] = CINTR; tio->c_cc[VQUIT] = CQUIT; tio->c_cc[VERASE] = CERASE; +#ifdef VERASE2 + tio->c_cc[VERASE2] = CERASE2; +#endif tio->c_cc[VKILL] = CKILL; tio->c_cc[VSTART] = CSTART; tio->c_cc[VSTOP] = CSTOP;