X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/7be1c708c5abc7dea388d45454bd19bff07b7943..cf5fc6dbeac10220394ab201ba3f4402e1e91faf:/src/terminal.c diff --git a/src/terminal.c b/src/terminal.c index 67577adf3b..2c0c60e734 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -1,5 +1,5 @@ /* Functions related to terminal devices. - Copyright (C) 2005-2011 Free Software Foundation, Inc. + Copyright (C) 2005-2012 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -17,8 +17,10 @@ You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see . */ #include + +#define TERMHOOKS_INLINE EXTERN_INLINE + #include -#include #include "lisp.h" #include "frame.h" @@ -39,6 +41,13 @@ struct terminal *initial_terminal; static void delete_initial_terminal (struct terminal *); +/* This setter is used only in this file, so it can be private. */ +static void +tset_param_alist (struct terminal *t, Lisp_Object val) +{ + t->param_alist = val; +} + void @@ -225,16 +234,13 @@ create_terminal (void) struct terminal *terminal = allocate_terminal (); Lisp_Object terminal_coding, keyboard_coding; - terminal->name = NULL; terminal->next_terminal = terminal_list; terminal_list = terminal; terminal->id = next_terminal_id++; - terminal->keyboard_coding = - (struct coding_system *) xmalloc (sizeof (struct coding_system)); - terminal->terminal_coding = - (struct coding_system *) xmalloc (sizeof (struct coding_system)); + terminal->keyboard_coding = xmalloc (sizeof (struct coding_system)); + terminal->terminal_coding = xmalloc (sizeof (struct coding_system)); /* If default coding systems for the terminal and the keyboard are already defined, use them in preference to the defaults. This is @@ -255,9 +261,6 @@ create_terminal (void) setup_coding_system (keyboard_coding, terminal->keyboard_coding); setup_coding_system (terminal_coding, terminal->terminal_coding); - terminal->param_alist = Qnil; - terminal->charset_list = Qnil; - terminal->Vselection_alist = Qnil; return terminal; } @@ -290,7 +293,7 @@ delete_terminal (struct terminal *terminal) for (tp = &terminal_list; *tp != terminal; tp = &(*tp)->next_terminal) if (! *tp) - abort (); + emacs_abort (); *tp = terminal->next_terminal; xfree (terminal->keyboard_coding); @@ -407,7 +410,7 @@ possible return values. */) case output_ns: return Qns; default: - abort (); + emacs_abort (); } } @@ -452,7 +455,7 @@ store_terminal_param (struct terminal *t, Lisp_Object parameter, Lisp_Object val Lisp_Object old_alist_elt = Fassq (parameter, t->param_alist); if (EQ (old_alist_elt, Qnil)) { - t->param_alist = Fcons (Fcons (parameter, value), t->param_alist); + tset_param_alist (t, Fcons (Fcons (parameter, value), t->param_alist)); return Qnil; } else @@ -515,7 +518,7 @@ struct terminal * init_initial_terminal (void) { if (initialized || terminal_list || tty_list) - abort (); + emacs_abort (); initial_terminal = create_terminal (); initial_terminal->type = output_initial; @@ -534,7 +537,7 @@ static void delete_initial_terminal (struct terminal *terminal) { if (terminal != initial_terminal) - abort (); + emacs_abort (); delete_terminal (terminal); initial_terminal = NULL;