--- rxvt-unicode/src/main.C 2003/12/18 13:33:02 1.17 +++ rxvt-unicode/src/main.C 2003/12/24 09:22:29 1.19 @@ -1,7 +1,7 @@ /*--------------------------------*-C-*---------------------------------* * File: main.c *----------------------------------------------------------------------* - * $Id: main.C,v 1.17 2003/12/18 13:33:02 pcg Exp $ + * $Id: main.C,v 1.19 2003/12/24 09:22:29 pcg Exp $ * * All portions of code are copyright by their respective author/s. * Copyright (c) 1992 John Bovey, University of Kent at Canterbury @@ -74,7 +74,7 @@ } rxvt_term::rxvt_term () -: pty_ev (this, &rxvt_term::pty_cb), +: destroy_ev (this, &rxvt_term::destroy_cb), #ifdef CURSOR_BLINK blink_ev (this, &rxvt_term::blink_cb), #endif @@ -82,9 +82,9 @@ pointer_ev (this, &rxvt_term::pointer_cb), #endif x_ev (this, &rxvt_term::x_cb), - destroy_ev (this, &rxvt_term::destroy_cb), check_ev (this, &rxvt_term::check_cb), - incr_ev (this, &rxvt_term::incr_cb) + incr_ev (this, &rxvt_term::incr_cb), + pty_ev (this, &rxvt_term::pty_cb) { cmdbuf_ptr = cmdbuf_endp = cmdbuf_base; } @@ -957,11 +957,16 @@ if (fix_screen || old_height == 0) { int curr_screen = -1; - uint16_t old_ncol = prev_ncol; + int old_ncol = prev_ncol; /* scr_reset only works on the primary screen */ if (old_height) /* this is not the first time through */ - curr_screen = rxvt_scr_change_screen (this, PRIMARY); + { + unsigned int ncol = TermWin.ncol; + TermWin.ncol = prev_ncol; // save b/c scr_blank_screen_mem uses this + curr_screen = rxvt_scr_change_screen (this, PRIMARY); + TermWin.ncol = ncol; + } scr_reset();