From: Paul Eggert Date: Fri, 30 Mar 2018 06:00:23 +0000 (-0700) Subject: Fix CHECK_ALLOCATED_AND_LIVE abort during GC X-Git-Tag: emacs-26.1.90~396^2~7 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=7460840;p=emacs.git Fix CHECK_ALLOCATED_AND_LIVE abort during GC * src/editfns.c (save_restriction_restore): Wait for the GC to free the temporary markers (Bug#30931). (cherry picked from commit 670f2ffae718046c0fb37313965a51c040ed096f) --- diff --git a/src/editfns.c b/src/editfns.c index d0ccdbddc29..3fc08f9d202 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -3876,9 +3876,10 @@ save_restriction_restore (Lisp_Object data) buf->clip_changed = 1; /* Remember that the narrowing changed. */ } - /* These aren't needed anymore, so don't wait for GC. */ - free_marker (XCAR (data)); - free_marker (XCDR (data)); + /* This isn’t needed anymore, so don’t wait for GC. + Do not call free_marker on XCAR (data) or XCDR (data), + though, since record_marker_adjustments may have put + them on the buffer’s undo list (Bug#30931). */ free_cons (XCONS (data)); } else