On Mon, Oct 19, 2026 at 04:04:12PM +0800, aidan wrote:
> 1. env -u INFOPATH info --init-file /dev/null info --all
> 
> the following menu is displayed:
> 
> > * Menu:
> > *    1: (/usr/local/share/info/info.info.gz).
> > *    2: (/usr/share/info/info.info.gz).
> > *    3: (*manpages*)info.
> 
> 2. press `1` to select the first menu item
> 3. press `C-x f` (or M-x all-files)
> 4. press `l` (or M-x history-node) twice
> 5. segmentation fault
> 

Thanks for the report.  I have fixed this in commit dfdcffa17a.

As seen in the previous comment, we weren't sure if the code was correct
in this function.


diff --git a/ChangeLog b/ChangeLog
index df68b34e88..f5a2fbf8f9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2026-10-19  Gavin Smith <[email protected]>
+
+       Fix crash with repeated "all-files" node in window history
+
+       * info/session-cmd.c (info_all_files):
+       Call replicate_node on allfiles_node so it can be safely placed in
+       a window.
+       
+       Crash after "M-x all-files" followed by repeated "l" reported by
+       Aidan <[email protected]>.
+
 2026-10-19  Gavin Smith <[email protected]>
 
        Fix junk at end of printed key sequence.
diff --git a/info/session-cmd.c b/info/session-cmd.c
index ea9c1b6fcb..c187714a47 100644
--- a/info/session-cmd.c
+++ b/info/session-cmd.c
@@ -47,8 +47,8 @@ DECLARE_INFO_COMMAND (info_all_files, _("Show all matching 
files"))
       return;
     }
 
-  /* FIXME: Copy allfiles_node so it is unique in the window history? */
-  info_set_node_of_window (window, allfiles_node);
+  info_set_node_of_window (window,
+                           replicate_node (allfiles_node));
 }
 


Reply via email to