aboutsummaryrefslogtreecommitdiffstats
path: root/src/alloc.c
diff options
context:
space:
mode:
authorEli Zaretskii2018-10-17 18:19:47 +0300
committerAndreas Schwab2019-06-10 12:52:31 +0200
commitfdd1b3e02097966e7ffe8065f6e3d27f5f540d0a (patch)
tree7163eaff57ea41c4a081bd2aff38845985d9a250 /src/alloc.c
parent758e9a8ed49c15f7069a67cf0c2ce3c6f9a3f7e1 (diff)
downloademacs-fdd1b3e02097966e7ffe8065f6e3d27f5f540d0a.tar.gz
emacs-fdd1b3e02097966e7ffe8065f6e3d27f5f540d0a.zip
Avoid assertion violation when comparing with main-thread
* src/thread.c (unmark_main_thread): New function. * src/lisp.h (unmark_main_thread): Prototype it. * src/alloc.c (garbage_collect_1): Call it after sweeping. (Bug#33073) * test/src/thread-tests.el (threads-test-bug33073): New test.
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/alloc.c b/src/alloc.c
index 6aeac140ca0..1a72941cc92 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -6003,6 +6003,8 @@ garbage_collect_1 (void *end)
6003 VECTOR_UNMARK (&buffer_defaults); 6003 VECTOR_UNMARK (&buffer_defaults);
6004 VECTOR_UNMARK (&buffer_local_symbols); 6004 VECTOR_UNMARK (&buffer_local_symbols);
6005 6005
6006 unmark_main_thread ();
6007
6006 check_cons_list (); 6008 check_cons_list ();
6007 6009
6008 gc_in_progress = 0; 6010 gc_in_progress = 0;