Blob Blame History Raw
diff -up texinfo-6.4/info/nodes.c.orig texinfo-6.4/info/nodes.c
--- texinfo-6.4/info/nodes.c.orig	2017-06-18 14:50:42.000000000 +0200
+++ texinfo-6.4/info/nodes.c	2017-07-10 09:39:10.195209219 +0200
@@ -678,6 +678,7 @@ info_find_subfile (char *fullpath)
   char *with_extension = 0;
   int i;
   FILE_BUFFER *file_buffer = 0;
+  int fullpath_len = strlen (fullpath);
 
   /* First try to find the file in our list of already loaded files. */
   if (info_loaded_files)
@@ -685,7 +686,9 @@ info_find_subfile (char *fullpath)
       for (i = 0; (file_buffer = info_loaded_files[i]); i++)
         /* Check if fullpath starts the name of the recorded file (extra
            extensions like ".info.gz" could be added.) */
-        if (!strncmp (file_buffer->fullpath, fullpath, strlen (fullpath)))
+        if (!strncmp (file_buffer->fullpath, fullpath, fullpath_len)
+            && (file_buffer->fullpath[fullpath_len] == '\0'
+                || file_buffer->fullpath[fullpath_len] == '.'))
           {
             struct stat new_info, *old_info;