diff options
author | Po Lu <luangruo@yahoo.com> | 2022-12-06 09:30:00 +0800 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2022-12-08 08:57:24 +0800 |
commit | 508b0c1b2230e2b7b21299b3ffe64c05d2bf7f81 (patch) | |
tree | 9f1c47f410701e8ab076ff25f461ce3309529db1 | |
parent | 670daa8b6264f9cd813efb0d40ceec253fdd603e (diff) | |
download | emacs-508b0c1b2230e2b7b21299b3ffe64c05d2bf7f81.tar.gz |
Fix crash on Windows 9X
* src/emacs.c (main): Call init_bignum before init_window_once.
-rw-r--r-- | src/emacs.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/emacs.c b/src/emacs.c index 00e7f86e9ae..d8a2863fd9c 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -1924,6 +1924,12 @@ Using an Emacs configured with --with-x-toolkit=lucid does not have this problem Vcoding_system_hash_table. */ syms_of_coding (); /* This should be after syms_of_fileio. */ init_frame_once (); /* Before init_window_once. */ + /* init_window_once calls make_initial_frame, which calls + Fcurrent_time and bset_display_time, both of which allocate + bignums. Without the following call to init_bignums, crashes + happen on Windows 9X after dumping when GC tries to free a + pointer allocated on the system heap. */ + init_bignum (); init_window_once (); /* Init the window system. */ #ifdef HAVE_WINDOW_SYSTEM init_fringe_once (); /* Swap bitmaps if necessary. */ |