bug-texinfo
[Top][All Lists]
Advanced

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

Re: texinfo 4.12: incremental search broken


From: Sergey Poznyakoff
Subject: Re: texinfo 4.12: incremental search broken
Date: Sat, 13 Sep 2008 13:04:39 +0300

Bruno Haible <address@hidden> ha escrit:

> Thanks. In texinfo-4.12.94, it is mostly fixed indeed. One problem still:
> Wrong cursor positioning.

Thanks for a detailed report. I applied the following patch to the CVS:

Index: info/window.c
===================================================================
RCS file: /cvsroot/texinfo/texinfo/info/window.c,v
retrieving revision 1.16
diff -p -u -r1.16 window.c
--- info/window.c       28 Jun 2008 08:09:49 -0000      1.16
+++ info/window.c       13 Sep 2008 09:58:10 -0000
@@ -1786,8 +1786,9 @@ clean_manpage (char *manpage)
 }
 
 static void
-line_map_init (LINE_MAP *map, int line)
+line_map_init (LINE_MAP *map, NODE *node, int line)
 {
+  map->node = node;
   map->nline = line;
   map->used = 0;
 }
@@ -1916,9 +1917,10 @@ window_compute_line_map (WINDOW *win)
 {
   int line = window_line_of_point (win);
 
-  if (win->line_map.nline == line && win->line_map.used)
+  if (win->line_map.node == win->node && win->line_map.nline == line
+      && win->line_map.used)
     return;
-  line_map_init (&win->line_map, line);
+  line_map_init (&win->line_map, win->node, line);
   if (win->node)
     window_scan_line (win, line, 0, add_line_map, win);
 }
Index: info/window.h
===================================================================
RCS file: /cvsroot/texinfo/texinfo/info/window.h,v
retrieving revision 1.11
diff -p -u -r1.11 window.h
--- info/window.h       28 Jun 2008 08:10:02 -0000      1.11
+++ info/window.h       13 Sep 2008 09:58:10 -0000
@@ -40,6 +40,7 @@
    point values into columns on screen and vice versa. */
 typedef struct line_map_struct
 {
+  NODE *node;      /* Node to which this line pertains */
   size_t nline;    /* Line number for which the map is computed. */
   size_t size;     /* Number of elements map can accomodate */
   size_t used;     /* Number of used map slots */

Regards,
Sergey




reply via email to

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