diff options
Diffstat (limited to 'src/emacs.c')
-rw-r--r-- | src/emacs.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/emacs.c b/src/emacs.c index 846bfc7e453..41857b7ccb8 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -1302,6 +1302,7 @@ main (argc, argv init_alloc_once (); init_obarray (); init_eval_once (); + init_character_once (); init_charset_once (); init_coding_once (); init_syntax_once (); /* Create standard syntax table. */ @@ -1420,12 +1421,15 @@ main (argc, argv Lisp_Object buffer; buffer = Fcdr (XCAR (tail)); - /* Verify that all buffers are empty now, as they - ought to be. */ - if (BUF_Z (XBUFFER (buffer)) > BUF_BEG (XBUFFER (buffer))) - abort (); - /* It is safe to do this crudely in an empty buffer. */ - XBUFFER (buffer)->enable_multibyte_characters = Qnil; + /* Make a multibyte buffer unibyte. */ + if (BUF_Z_BYTE (XBUFFER (buffer)) > BUF_Z (XBUFFER (buffer))) + { + struct buffer *current = current_buffer; + + set_buffer_temp (XBUFFER (buffer)); + Fset_buffer_multibyte (Qnil); + set_buffer_temp (current); + } } } } @@ -1554,6 +1558,7 @@ main (argc, argv syms_of_data (); #endif syms_of_alloc (); + syms_of_chartab (); syms_of_lread (); syms_of_print (); syms_of_eval (); @@ -1572,6 +1577,7 @@ main (argc, argv /* Called before init_window_once for Mac OS Classic. */ syms_of_ccl (); #endif + syms_of_character (); syms_of_charset (); syms_of_cmds (); #ifndef NO_DIR_LIBRARY @@ -1683,6 +1689,8 @@ main (argc, argv #endif /* HAVE_NTGUI */ } + init_charset (); + if (!noninteractive) { #ifdef VMS |