+2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
+ (init_keyboard): Set current_kboard's window-system to nil.
+ (tty_read_avail_input): Typo.
+ * frame.c (make_initial_frame): Don't initialize the initial_kboard.
+
2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
* s/usg5-4.h:
struct terminal *terminal;
Lisp_Object frame;
-#ifdef MULTI_KBOARD
- /* Create the initial keyboard. */
- if (!initial_kboard)
- {
- initial_kboard = (KBOARD *) xmalloc (sizeof (KBOARD));
- init_kboard (initial_kboard);
- /* Leave Vwindow_system at its `t' default for now. */
- initial_kboard->next_kboard = all_kboards;
- all_kboards = initial_kboard;
- }
-#endif
+ eassert (initial_kboard);
/* The first call must initialize Vframe_list. */
if (! (NILP (Vframe_list) || CONSP (Vframe_list)))
int nread = 0;
if (!terminal->name) /* Don't read from a dead terminal. */
- return;
+ return 0;
if (terminal->type != output_termcap)
abort ();
#ifdef MULTI_KBOARD
current_kboard = initial_kboard;
#endif
+ /* Re-initialize the keyboard again. */
wipe_kboard (current_kboard);
init_kboard (current_kboard);
- /* Leave Vwindow_system at its `t' default for now. */
+ /* A value of nil for Vwindow_system normally means a tty, but we also use
+ it for the initial terminal since there is no window system there. */
+ current_kboard->Vwindow_system = Qnil;
if (!noninteractive)
{
Help functions bind this to allow help on disabled menu items
and tool-bar buttons. */);
Venable_disabled_menus_and_buttons = Qnil;
+
+#ifdef MULTI_KBOARD
+ /* Create the initial keyboard. */
+ initial_kboard = (KBOARD *) xmalloc (sizeof (KBOARD));
+ init_kboard (initial_kboard);
+ /* Vwindow_system is left at t for now. */
+ initial_kboard->next_kboard = all_kboards;
+ all_kboards = initial_kboard;
+#endif
}
void