emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 42ab0f162cb: Fix tty root frame collection in redisplay_internal


From: Gerd Moellmann
Subject: master 42ab0f162cb: Fix tty root frame collection in redisplay_internal
Date: Fri, 20 Dec 2024 00:13:41 -0500 (EST)

branch: master
commit 42ab0f162cb37eeddae53675fba310b8a22ff934
Author: Gerd Möllmann <gerd@gnu.org>
Commit: Gerd Möllmann <gerd@gnu.org>

    Fix tty root frame collection in redisplay_internal
    
    * src/fns.c (memq_no_quit): New function.
    * src/lisp.h: Declare it.
    * src/xdisp.c (redisplay_internal): Use memq_no_quit instead of
    assq_no_quit.
---
 src/fns.c   | 9 +++++++++
 src/lisp.h  | 1 +
 src/xdisp.c | 2 +-
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/fns.c b/src/fns.c
index ef6922c137b..0ad27dbc256 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -1924,6 +1924,15 @@ The value is actually the tail of LIST whose car is ELT. 
 */)
   return Qnil;
 }
 
+Lisp_Object
+memq_no_quit (Lisp_Object elt, Lisp_Object list)
+{
+  for (; CONSP (list); list = XCDR (list))
+    if (EQ (XCAR (list), elt))
+      return list;
+  return Qnil;
+}
+
 DEFUN ("memql", Fmemql, Smemql, 2, 2, 0,
        doc: /* Return non-nil if ELT is an element of LIST.  Comparison done 
with `eql'.
 The value is actually the tail of LIST whose car is ELT.  */)
diff --git a/src/lisp.h b/src/lisp.h
index 832a1755c04..bf6b023fc2a 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -4340,6 +4340,7 @@ extern Lisp_Object plist_put (Lisp_Object plist, 
Lisp_Object prop,
 extern Lisp_Object plist_member (Lisp_Object plist, Lisp_Object prop);
 extern void syms_of_fns (void);
 extern void mark_fns (void);
+Lisp_Object memq_no_quit (Lisp_Object elt, Lisp_Object list);
 
 /* Defined in sort.c  */
 extern void tim_sort (Lisp_Object, Lisp_Object, Lisp_Object *, const ptrdiff_t,
diff --git a/src/xdisp.c b/src/xdisp.c
index 91db3a87aae..ceb727d1135 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -17455,7 +17455,7 @@ redisplay_internal (void)
 
              /* Remember tty root frames which we've seen.  */
              if (!FRAME_PARENT_FRAME (f)
-                 && NILP (assq_no_quit (frame, tty_root_frames)))
+                 && NILP (memq_no_quit (frame, tty_root_frames)))
                tty_root_frames = Fcons (frame, tty_root_frames);
            }
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]