Merge from emacs-23 branch
[bpt/emacs.git] / src / terminal.c
index 7382622..67577ad 100644 (file)
@@ -256,6 +256,8 @@ create_terminal (void)
   setup_coding_system (terminal_coding, terminal->terminal_coding);
 
   terminal->param_alist = Qnil;
+  terminal->charset_list = Qnil;
+  terminal->Vselection_alist = Qnil;
   return terminal;
 }
 
@@ -305,7 +307,7 @@ delete_terminal (struct terminal *terminal)
 
 Lisp_Object Qrun_hook_with_args;
 static Lisp_Object Qdelete_terminal_functions;
-DEFUE ("delete-terminal", Fdelete_terminal, Sdelete_terminal, 0, 2, 0,
+DEFUN ("delete-terminal", Fdelete_terminal, Sdelete_terminal, 0, 2, 0,
        doc: /* Delete TERMINAL by deleting all frames on it and closing the terminal.
 TERMINAL may be a terminal object, a frame, or nil (meaning the
 selected frame's terminal).
@@ -348,7 +350,7 @@ but if the second argument FORCE is non-nil, you may do so. */)
 }
 
 \f
-DEFUE ("frame-terminal", Fframe_terminal, Sframe_terminal, 0, 1, 0,
+DEFUN ("frame-terminal", Fframe_terminal, Sframe_terminal, 0, 1, 0,
        doc: /* Return the terminal that FRAME is displayed on.
 If FRAME is nil, the selected frame is used.
 
@@ -553,10 +555,8 @@ Each function is called with argument, the terminal.
 This may be called just before actually deleting the terminal,
 or some time later.  */);
   Vdelete_terminal_functions = Qnil;
-  Qdelete_terminal_functions = intern_c_string ("delete-terminal-functions");
-  staticpro (&Qdelete_terminal_functions);
-  Qrun_hook_with_args = intern_c_string ("run-hook-with-args");
-  staticpro (&Qrun_hook_with_args);
+  DEFSYM (Qdelete_terminal_functions, "delete-terminal-functions");
+  DEFSYM (Qrun_hook_with_args, "run-hook-with-args");
 
   defsubr (&Sdelete_terminal);
   defsubr (&Sframe_terminal);