diff src/emacs.c @ 25010:16ced12bd3aa

(main): Call init_fns. (main): Call syms_of_sound and init_sound. (main): Call syms_of_xfaces before init_window_once. (main): Call init_xfns. (shut_down_emacs): check glyph memory.
author Gerd Moellmann <gerd@gnu.org>
date Wed, 21 Jul 1999 21:43:52 +0000
parents b57b0a4e4230
children 0025288c5825
line wrap: on
line diff
--- a/src/emacs.c	Wed Jul 21 21:43:52 1999 +0000
+++ b/src/emacs.c	Wed Jul 21 21:43:52 1999 +0000
@@ -971,7 +971,16 @@
       init_casetab_once ();
       init_buffer_once ();	/* Create buffer table and some buffers */
       init_minibuf_once ();	/* Create list of minibuffers */
-			      /* Must precede init_window_once */
+				/* Must precede init_window_once */
+      
+      /* Call syms_of_xfaces before init_window_once because that
+	 function creates Vterminal_frame.  Termcap frames now use
+	 faces, and the face implementation uses some symbols as
+	 face names.  */
+#ifndef HAVE_NTGUI
+      syms_of_xfaces ();
+#endif
+
       init_window_once ();	/* Init the window system */
       init_fileio_once ();	/* Must precede any path manipulation.  */
     }
@@ -1205,6 +1214,9 @@
       syms_of_syntax ();
       syms_of_term ();
       syms_of_undo ();
+#ifdef HAVE_SOUND
+      syms_of_sound ();
+#endif
 
       /* Only defined if Emacs is compiled with USE_TEXT_PROPERTIES */
       syms_of_textprop ();
@@ -1226,7 +1238,6 @@
 #endif /* HAVE_X_WINDOWS */
 
 #ifndef HAVE_NTGUI
-      syms_of_xfaces ();
       syms_of_xmenu ();
 #endif
 
@@ -1270,6 +1281,10 @@
   init_vmsproc ();	/* And this too. */
 #endif /* VMS */
   init_sys_modes ();	/* Init system terminal modes (RAW or CBREAK, etc.) */
+#ifdef HAVE_X_WINDOWS
+  init_xfns ();
+#endif /* HAVE_X_WINDOWS */
+  init_fns ();
   init_xdisp ();
   init_macros ();
   init_editfns ();
@@ -1280,6 +1295,9 @@
   init_vmsfns ();
 #endif /* VMS */
   init_process ();
+#ifdef HAVE_SOUND
+  init_sound ();
+#endif
 
   if (!initialized)
     {
@@ -1325,14 +1343,13 @@
     {
       extern void _mcleanup ();       
       extern char etext;
-      extern Lisp_Object Fredraw_frame ();
+      extern void safe_bcopy ();
       atexit (_mcleanup);
-      /* This uses Fredraw_frame because that function
-	 comes first in the Emacs executable.
-	 It might be better to use something that gives
-	 the start of the text segment, but start_of_text
-	 is not defined on all systems now.  */
-      monstartup (Fredraw_frame, &etext);
+      /* This uses safe_bcopy because that function comes first in the
+	 Emacs executable.  It might be better to use something that
+	 gives the start of the text segment, but start_of_text is not
+	 defined on all systems now.  */
+      monstartup (safe_bcopy, &etext);
     }
   else
     moncontrol (0);
@@ -1719,6 +1736,8 @@
   term_ntproc ();
 #endif
 
+  check_glyph_memory ();
+
 #ifdef MSDOS
   dos_cleanup ();
 #endif