Mercurial > emacs
comparison src/keyboard.c @ 83472:b8bd59a73456
Fix tty state problem after error in `set-quit-char'.
* src/keyboard.c (Fset_quit_char): Don't leave tty state uninitialized
after an error.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-512
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Tue, 14 Feb 2006 12:32:39 +0000 |
parents | b98066f4aa10 |
children | b55933c26094 |
comparison
equal
deleted
inserted
replaced
83471:08b49bab776b | 83472:b8bd59a73456 |
---|---|
10907 struct tty_display_info *tty; | 10907 struct tty_display_info *tty; |
10908 if (t == NULL || t->type != output_termcap) | 10908 if (t == NULL || t->type != output_termcap) |
10909 return Qnil; | 10909 return Qnil; |
10910 tty = t->display_info.tty; | 10910 tty = t->display_info.tty; |
10911 | 10911 |
10912 if (NILP (quit) || !INTEGERP (quit) || XINT (quit) < 0 || XINT (quit) > 0400) | |
10913 error ("QUIT must be an ASCII character"); | |
10914 | |
10912 #ifndef DOS_NT | 10915 #ifndef DOS_NT |
10913 /* this causes startup screen to be restored and messes with the mouse */ | 10916 /* this causes startup screen to be restored and messes with the mouse */ |
10914 reset_sys_modes (tty); | 10917 reset_sys_modes (tty); |
10915 #endif | 10918 #endif |
10916 | 10919 |
10917 if (NILP (quit) || !INTEGERP (quit) || XINT (quit) < 0 || XINT (quit) > 0400) | |
10918 error ("QUIT must be an ASCII character"); | |
10919 | |
10920 /* Don't let this value be out of range. */ | 10920 /* Don't let this value be out of range. */ |
10921 quit_char = XINT (quit) & (tty->meta_key == 0 ? 0177 : 0377); | 10921 quit_char = XINT (quit) & (tty->meta_key == 0 ? 0177 : 0377); |
10922 | 10922 |
10923 #ifndef DOS_NT | 10923 #ifndef DOS_NT |
10924 init_sys_modes (tty); | 10924 init_sys_modes (tty); |