changeset 97746:7d48c48bc07e

(x_term_init): Temporarily hide the partially initialized terminal while calling vendor-specific-keysyms.
author Chong Yidong <cyd@stupidchicken.com>
date Wed, 27 Aug 2008 00:08:06 +0000
parents 30375d5db747
children 0d66ae50dc4e
files src/xterm.c
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/xterm.c	Wed Aug 27 00:06:53 2008 +0000
+++ b/src/xterm.c	Wed Aug 27 00:08:06 2008 +0000
@@ -10122,11 +10122,15 @@
 	if (!EQ (XSYMBOL (Qvendor_specific_keysyms)->function, Qunbound))
 	  {
 	    char *vendor = ServerVendor (dpy);
+	    /* Temporarily hide the partially initialized terminal */
+	    terminal_list = terminal->next_terminal;
 	    UNBLOCK_INPUT;
 	    terminal->kboard->Vsystem_key_alist
 	      = call1 (Qvendor_specific_keysyms,
 		       vendor ? build_string (vendor) : empty_unibyte_string);
 	    BLOCK_INPUT;
+	    terminal->next_terminal = terminal_list;
+ 	    terminal_list = terminal;
 	  }
 
 	terminal->kboard->next_kboard = all_kboards;