Mercurial > emacs
view src/s/umips.h @ 83525:b2e7507b55c6
Fix C-x 5 2 on the controlling tty; fix some possible crash conditions and a memory leak.
* 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
delete_terminal.
* 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
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Sat, 20 May 2006 17:12:43 +0000 |
parents | 695cf19ef79e |
children | 375f2633d815 |
line wrap: on
line source
/* Definitions file for GNU Emacs running on Mips operating system. That system can emulate either BSD or Sys V, in either case with changes. If BSD_SYSTEM is defined, we assume BSD is being emulated; otherwise, Sys V. */ #ifdef BSD_SYSTEM #include "bsd4-3.h" #define C_SWITCH_SYSTEM -systype bsd43 #define LD_SWITCH_SYSTEM -systype bsd43 #define LIBS_SYSTEM -lmld #define LIBS_DEBUG #define START_FILES pre-crt0.o /lib/crt1.o #define LIB_STANDARD -lc /usr/lib/crtn.o #define COFF #define TERMINFO #undef MAIL_USE_FLOCK /* Someone should check this. */ #undef HAVE_UNION_WAIT #else /* not BSD_SYSTEM */ #include "usg5-2-2.h" #define LIBS_SYSTEM -lmld #define LIBS_DEBUG #define START_FILES pre-crt0.o /usr/lib/crt1.o #define LIB_STANDARD -lbsd -lc /usr/lib/crtn.o /* #define LIBS_TERMCAP -lcurses */ #define C_SWITCH_SYSTEM -I/usr/include/bsd /* Cancel certain parts of standard sysV support. */ #undef NONSYSTEM_DIR_LIBRARY #define SYSV_SYSTEM_DIR #undef static /* Don't try to use SIGIO or FIONREAD even though they are defined. */ #define BROKEN_SIGIO #define BROKEN_FIONREAD /* Describe special kernel features. */ #define HAVE_SYSVIPC #if defined(emacs) #include <bsd/sys/time.h> #endif /* The `select' in the system won't work for pipes, so don't use it. */ #define BROKEN_SELECT #define HAVE_DUP2 #define HAVE_PTYS #define HAVE_SOCKETS /* #define BSTRING Supposedly removed. */ #undef NOMULTIPLEJOBS #define CLASH_DETECTION #define utimes utime /* Someone should check this. */ /* ??? */ #define IRIS #endif /* not BSD_SYSTEM */ /* High order bit must be stripped off nlist return values */ #define FIXUP_KERNEL_SYMBOL_ADDR(NL) (NL)[0].n_value &= 0x7fffffff; /* arch-tag: 9b816c7d-6ee2-40d9-b6dc-42c0aeccfbec (do not change this comment) */