* 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.
This commit is contained in:
parent
4d18a7a28e
commit
db87892598
3 changed files with 23 additions and 1 deletions
|
@ -1,5 +1,10 @@
|
|||
2009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
|
||||
|
||||
* 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.
|
||||
|
||||
* alloc.c (mark_stack): Properly conditionalize previous change.
|
||||
|
||||
2009-01-30 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
|
|
@ -6218,6 +6218,11 @@ window_change_signal (signalnum) /* If we don't have an argument, */
|
|||
if (! tty->term_initted)
|
||||
continue;
|
||||
|
||||
/* Suspended tty frames have tty->input == NULL avoid trying to
|
||||
use it. */
|
||||
if (!tty->input)
|
||||
continue;
|
||||
|
||||
get_tty_size (fileno (tty->input), &width, &height);
|
||||
|
||||
if (width > 5 && height > 2) {
|
||||
|
|
14
src/term.c
14
src/term.c
|
@ -2470,7 +2470,19 @@ the currently selected frame. */)
|
|||
#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);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue