Fix bug #7840 with default terminal and keyboard encodings.
terminal.c (create_terminal): Use default-keyboard-coding-system and default-terminal-coding-system to initialize coding systems of the new terminal.
This commit is contained in:
parent
135dee5572
commit
d6de49a103
2 changed files with 25 additions and 2 deletions
|
|
@ -1,3 +1,9 @@
|
|||
2011-02-18 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* terminal.c (create_terminal): Use default-keyboard-coding-system
|
||||
and default-terminal-coding-system to initialize coding systems of
|
||||
the new terminal. (Bug#7840)
|
||||
|
||||
2011-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* lisp.h (BYTE_MARK_STACK): New macro.
|
||||
|
|
|
|||
|
|
@ -223,6 +223,7 @@ struct terminal *
|
|||
create_terminal (void)
|
||||
{
|
||||
struct terminal *terminal = allocate_terminal ();
|
||||
Lisp_Object terminal_coding, keyboard_coding;
|
||||
|
||||
terminal->name = NULL;
|
||||
terminal->next_terminal = terminal_list;
|
||||
|
|
@ -235,8 +236,24 @@ create_terminal (void)
|
|||
terminal->terminal_coding =
|
||||
(struct coding_system *) xmalloc (sizeof (struct coding_system));
|
||||
|
||||
setup_coding_system (Qno_conversion, terminal->keyboard_coding);
|
||||
setup_coding_system (Qundecided, terminal->terminal_coding);
|
||||
/* If default coding systems for the terminal and the keyboard are
|
||||
already defined, use them in preference to the defaults. This is
|
||||
needed when Emacs runs in daemon mode. */
|
||||
keyboard_coding =
|
||||
find_symbol_value (intern ("default-keyboard-coding-system"));
|
||||
if (NILP (keyboard_coding)
|
||||
|| EQ (keyboard_coding, Qunbound)
|
||||
|| NILP (Fcoding_system_p (keyboard_coding)))
|
||||
keyboard_coding = Qno_conversion;
|
||||
terminal_coding =
|
||||
find_symbol_value (intern ("default-terminal-coding-system"));
|
||||
if (NILP (terminal_coding)
|
||||
|| EQ (terminal_coding, Qunbound)
|
||||
|| NILP (Fcoding_system_p (terminal_coding)))
|
||||
terminal_coding = Qundecided;
|
||||
|
||||
setup_coding_system (keyboard_coding, terminal->keyboard_coding);
|
||||
setup_coding_system (terminal_coding, terminal->terminal_coding);
|
||||
|
||||
terminal->param_alist = Qnil;
|
||||
return terminal;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue