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 fd38268386a..013dd1c8918 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -1287,6 +1287,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. */ @@ -1405,12 +1406,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); + } } } } @@ -1539,6 +1543,7 @@ main (argc, argv syms_of_data (); #endif syms_of_alloc (); + syms_of_chartab (); syms_of_lread (); syms_of_print (); syms_of_eval (); @@ -1557,6 +1562,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 @@ -1670,6 +1676,8 @@ main (argc, argv #endif /* HAVE_NTGUI */ } + init_charset (); + if (!noninteractive) { #ifdef VMS |