summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@linux-m68k.org>2019-06-10 12:34:38 +0200
committerAndreas Schwab <schwab@linux-m68k.org>2019-06-10 12:35:35 +0200
commit1877b7b4d79b3434379fd5a4abd85906c25df00c (patch)
tree639da77892522407559cd9133c44339f0b6fb783 /src
parent4904fb352c14539e1c6927e8c893abb037bca8a0 (diff)
downloademacs-1877b7b4d79b3434379fd5a4abd85906c25df00c.tar.gz
Don't mark main_thread (Bug#36155)
* thread.c (mark_threads_callback): Don't mark main_thread.
Diffstat (limited to 'src')
-rw-r--r--src/thread.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/thread.c b/src/thread.c
index 0cd1ae33dc2..e2158019839 100644
--- a/src/thread.c
+++ b/src/thread.c
@@ -645,7 +645,10 @@ mark_threads_callback (void *ignore)
Lisp_Object thread_obj;
XSETTHREAD (thread_obj, iter);
- mark_object (thread_obj);
+ /* Don't mark main_thread, since it is not allocated
+ dynamically, thus nothing would unmark it. */
+ if (iter != &main_thread)
+ mark_object (thread_obj);
mark_one_thread (iter);
}
}