On Thu, Oct 22, 2026 at 10:19:28AM +0100, Gavin Smith wrote: > To be fully correct, we should say that a DEL byte can't occur in the > index entry text, so with your example above: > > * Texinfo::Convert::Converter initialization: ^?Texinfo::Convert::Converter > Converter Initialization^?. > > - the index entry is for "Texinfo::Convert::Converter initialization", not > for "Texinfo::Convert::Converter initialization: ^?Texinfo::Convert:". > > As you found below, the implementation in Info doesn't work with the DEL > quoted node name if the node name contains a colon, which is definitely > a bug. I will investigate.
This was actually fixed already, earlier this year, in commit c7baf174e: diff --git a/ChangeLog b/ChangeLog index e6d7a98bd0..5dde45930b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2026-07-11 Gavin Smith <[email protected]> + + Fix index reference to node with : in its name + + * info/scan.c (scan_reference_label): Include DEL byte in + argument to strcspn. This reverses change on 2024-12-30. + + Fix from ThomB <[email protected]>. + 2026-07-10 Gavin Smith <[email protected]> * README-hacking: remove missed self-destructing note for post diff --git a/info/scan.c b/info/scan.c index 1b01ab5220..6121f992dd 100644 --- a/info/scan.c +++ b/info/scan.c @@ -1151,7 +1151,7 @@ scan_reference_label (REFERENCE *entry, int in_index) while (1) { - n = strcspn (p, ":\n"); + n = strcspn (p, ":\n" INFO_QUOTE_STR); if (p[n] == ':') { m += n + 1;
