Mercurial > emacs
view src/s/sunos4-0.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 | bbb115bb1b44 375f2633d815 |
line wrap: on
line source
#include "bsd4-2.h" #ifndef SUNOS4 #define SUNOS4 #endif #if 0 /* This may have been needed for an earlier version of Sun OS 4. It seems to cause warnings in 4.0.3 and 4.1. */ #define O_NDELAY FNDELAY /* Non-blocking I/O (4.2 style) */ #endif /* We use the Sun syntax -Bstatic unconditionally, because even when we use GCC, these are passed through to the linker, not handled by GCC directly. */ #define LD_SWITCH_SYSTEM -Bstatic /* We use this for linking temacs, but not for other programs or for tests in configure. */ #define LD_SWITCH_SYSTEM_TEMACS -e __start /* In SunOS 4.1, a static function called by tzsetwall reportedly clears the byte just past an eight byte region it mallocs, corrupting GNU malloc's memory pool. But Sun's malloc doesn't seem to mind. */ #define SYSTEM_MALLOC /* SunOS 4.x cc <stdlib.h> declares abort and free to return int. */ #ifndef __STDC__ #define ABORT_RETURN_TYPE int #define FREE_RETURN_TYPE int #endif #ifdef __GNUC__ /* We must define mkdir with this arg prototype to match GCC's fixed stat.h. */ #define MKDIR_PROTOTYPE \ int mkdir (const char *dpath, unsigned short dmode) #endif /* __GNUC__ */ /* Must use the system's termcap, if we use any termcap. It does special things. */ #ifndef TERMINFO #define LIBS_TERMCAP -ltermcap #endif #define GC_SETJMP_WORKS 1 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS /* arch-tag: 362f3bfc-810d-4f6e-9b83-5a32f8f1a926 (do not change this comment) */