From 3b4d119c40817a528be5ad2bb994521a947dc443 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 6 Oct 2015 13:33:50 -0700 Subject: [PATCH] Fix bug in GC_CHECK_MARKED_OBJECTS check * src/alloc.c (mark_object): Fix bug in checking code. When GC_CHECK_MARKED_OBJECTS is defined, the bug caused CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each bucket. The bug did not affect behavior either in the normal case where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does not have an internal error that a properly-written CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect. --- src/alloc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/alloc.c b/src/alloc.c index 3ab2a6e3843..5fc40d13b8d 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -6217,7 +6217,7 @@ mark_object (Lisp_Object arg) MARK_STRING (XSTRING (ptr->name)); MARK_INTERVAL_TREE (string_intervals (ptr->name)); /* Inner loop to mark next symbol in this bucket, if any. */ - ptr = ptr->next; + po = ptr = ptr->next; if (ptr) goto nextsym; } -- 2.39.2