• Karoly Lorentey's avatar
    Fix C-x 5 2 on the controlling tty; fix some possible crash conditions and a memory leak. · ab797f65
    Karoly Lorentey authored
    * src/frame.c (make_terminal_frame): Don't create frames on a terminal
      that is being deleted.
    * src/xfns.c (Fx_create_frame, x_create_tip_frame): Ditto.
    * src/keyboard.c (tty_read_avail_input): Don't read from a terminal that
      is being deleted.
    * src/term.c (get_named_tty): Abort if tty name is NULL.  Simplify accordingly.
    * src/term.c (Ftty_type): Return nil if terminal is not on a tty instead
      of throwing an error.  Doc update.
    * src/term.c (init_tty): Set name before calling `get_named_tty'.
    * src/term.c (delete_tty): Let delete_terminal delete the frames.  Plug
      memory leak caused by tty->name.  Remove reference to `deleting_tty'.
    * src/term.c (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>: Doc update.
    * src/termhooks.h (terminal) <name>: Explain why identifying terminals by
      name is a bad idea.
    * src/terminal.c (delete_terminal): Doc update.
    * src/xterm.c (XTread_socket): Disable loop on all X displays.
    * src/xterm.c (x_delete_display): Doc update to reflect changes in
    * src/xterm.c (x_delete_terminal): Don't set terminal->deleted and let
      delete_terminal delete the frames on the terminal.
    * src/xterm.h (x_display_info) <terminal>: Move member earlier in the struct.
    git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-565
xterm.c 319 KB