Mercurial > emacs
diff src/term.c @ 101690:1009d5607716
* dispnew.c (window_change_signal): Don't try to get the size of a
suspended tty frame.
* term.c (Fresume_tty): Resize if the size has changed while the
tty was suspended.
author | Dan Nicolaescu <dann@ics.uci.edu> |
---|---|
date | Fri, 30 Jan 2009 23:45:27 +0000 |
parents | e038c1a8307c |
children | d4f9e4244d5a |
line wrap: on
line diff
--- a/src/term.c Fri Jan 30 23:43:20 2009 +0000 +++ b/src/term.c Fri Jan 30 23:45:27 2009 +0000 @@ -2470,7 +2470,19 @@ #endif if (FRAMEP (t->display_info.tty->top_frame)) - FRAME_SET_VISIBLE (XFRAME (t->display_info.tty->top_frame), 1); + { + struct frame *f = XFRAME (t->display_info.tty->top_frame); + int width, height; + int old_height = FRAME_COLS (f); + int old_width = FRAME_LINES (f); + + /* Check if terminal/window size has changed while the frame + was suspended. */ + get_tty_size (fileno (t->display_info.tty->input), &width, &height); + if (width != old_width || height != old_height) + change_frame_size (f, height, width, 0, 0, 0); + FRAME_SET_VISIBLE (XFRAME (t->display_info.tty->top_frame), 1); + } init_sys_modes (t->display_info.tty);