GNU bug report logs - #78444
30.1; Crash in GC (vector_marked_p)

Previous Next

Package: emacs;

Reported by: George P <georgepanagopo <at> gmail.com>

Date: Thu, 15 May 2025 18:46:01 UTC

Severity: normal

Found in version 30.1

Full log


View this message in rfc822 format

From: martin rudalics <rudalics <at> gmx.at>
To: George P <georgepanagopo <at> gmail.com>, Pip Cet <pipcet <at> protonmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, acorallo <at> gnu.org, 78444 <at> debbugs.gnu.org
Subject: bug#78444: 30.1; Crash in GC (vector_marked_p)
Date: Mon, 16 Jun 2025 10:34:40 +0200
> Can you try
[...)
> and get us a backtrace when it's hit.

... which was a very silly proposal.  Please try

diff --git a/src/window.c b/src/window.c
index 1ac004af5e0..92e215fc9be 100644
--- a/src/window.c
+++ b/src/window.c
@@ -303,6 +303,14 @@ wset_buffer (struct window *w, Lisp_Object val)
     /* Make sure that we do not assign the buffer
        to an internal window.  */
     eassert (MARKERP (w->start) && MARKERP (w->pointm));
+  else
+    {
+      if (MARKERP (w->start))
+	eassert (!XMARKER (w->start)->buffer);
+      if (MARKERP (w->pointm))
+	eassert (!XMARKER (w->pointm)->buffer);
+    }
+
   w->contents = val;
   adjust_window_count (w, 1);
 }

instead.  If it does not work either, I will have to think of something
more elaborate.

Thanks, martin





This bug report was last modified 3 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.