[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: * tp/Texinfo/Convert/HTML.pm (output): normalize
From: |
Patrice Dumas |
Subject: |
branch master updated: * tp/Texinfo/Convert/HTML.pm (output): normalize node redirection name before comparing with existing file names, in case case of file name needs to be normalized. Report from Torbjörn Svensson. |
Date: |
Wed, 11 Jan 2023 17:02:58 -0500 |
This is an automated email from the git hooks/post-receive script.
pertusus pushed a commit to branch master
in repository texinfo.
The following commit(s) were added to refs/heads/master by this push:
new 35562a61f2 * tp/Texinfo/Convert/HTML.pm (output): normalize node
redirection name before comparing with existing file names, in case case of
file name needs to be normalized. Report from Torbjörn Svensson.
35562a61f2 is described below
commit 35562a61f257b12b07e66dbac08d8c3ce9861834
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Wed Jan 11 23:02:48 2023 +0100
* tp/Texinfo/Convert/HTML.pm (output): normalize node redirection
name before comparing with existing file names, in case case of file
name needs to be normalized. Report from Torbjörn Svensson.
* tp/t/html_tests.t, tp/Makefile.tres: add
file_name_case_insensitive_conflict_redirections, from Torbjörn
Svensson.
---
ChangeLog | 10 +
tp/Makefile.tres | 2 +
tp/Texinfo/Convert/HTML.pm | 15 +-
tp/t/html_tests.t | 23 +
..._name_case_insensitive_conflict_redirections.pl | 629 +++++++++++++++++++++
.../res_html/Foo.html | 22 +
.../res_html/index.html | 49 ++
7 files changed, 742 insertions(+), 8 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 4b202e976e..2f56219f2d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2023-01-11 Patrice Dumas <pertusus@free.fr>
+
+ * tp/Texinfo/Convert/HTML.pm (output): normalize node redirection
+ name before comparing with existing file names, in case case of file
+ name needs to be normalized. Report from Torbjörn Svensson.
+
+ * tp/t/html_tests.t, tp/Makefile.tres: add
+ file_name_case_insensitive_conflict_redirections, from Torbjörn
+ Svensson.
+
2023-01-11 Gavin Smith <gavinsmith0123@gmail.com>
Hypenation in @code
diff --git a/tp/Makefile.tres b/tp/Makefile.tres
index 2fdf82da28..0c9ba1b24f 100644
--- a/tp/Makefile.tres
+++ b/tp/Makefile.tres
@@ -557,6 +557,8 @@ test_files_generated_list =
$(test_tap_files_generated_list) \
t/results/html_tests/empty_lines_at_beginning_no_setfilename.pl \
t/results/html_tests/empty_lines_at_beginning_no_setfilename_no_element.pl \
t/results/html_tests/empty_titlefont.pl \
+ t/results/html_tests/file_name_case_insensitive_conflict_redirections.pl \
+
t/results/html_tests/file_name_case_insensitive_conflict_redirections/res_html \
t/results/html_tests/file_name_conflict_with_Top.pl \
t/results/html_tests/file_name_conflict_with_Top/res_html \
t/results/html_tests/file_name_conflict_with_section.pl \
diff --git a/tp/Texinfo/Convert/HTML.pm b/tp/Texinfo/Convert/HTML.pm
index 05183e2f6f..2cc6da5e97 100644
--- a/tp/Texinfo/Convert/HTML.pm
+++ b/tp/Texinfo/Convert/HTML.pm
@@ -11139,17 +11139,19 @@ sub output($$)
}
if (defined($filename) and $node_filename ne $filename) {
+ my $redirection_filename
+ = $self->register_normalize_case_filename($node_filename);
# first condition finds conflict with tree elements
- if ($self->{'elements_in_file_count'}->{$node_filename}
- or $redirection_filenames{$node_filename}) {
+ if ($self->{'elements_in_file_count'}->{$redirection_filename}
+ or $redirection_filenames{$redirection_filename}) {
$self->line_warn($self,
sprintf(__("\@%s `%s' file %s for redirection exists"),
$node->{'cmdname'},
Texinfo::Convert::Texinfo::convert_to_texinfo({'contents'
=> $node->{'extra'}->{'node_content'}}),
- $node_filename),
+ $redirection_filename),
$node->{'source_info'});
- my $file_source = $files_source_info{$node_filename};
+ my $file_source = $files_source_info{$redirection_filename};
my $file_info_type = $file_source->{'file_info_type'};
if ($file_info_type eq 'special_file'
or $file_info_type eq 'stand_in_file') {
@@ -11222,10 +11224,7 @@ sub output($$)
}
next;
}
- # should be the same as $node_filename as it is the first registration
- my $redirection_filename
- = $self->register_normalize_case_filename($node_filename);
- $redirection_filenames{$node_filename} = $node;
+ $redirection_filenames{$redirection_filename} = $node;
$files_source_info{$redirection_filename}
= {'file_info_type' => 'redirection', 'file_info_element' => $node};
my $redirection_page
diff --git a/tp/t/html_tests.t b/tp/t/html_tests.t
index 34130708d0..38ecfbb7c1 100644
--- a/tp/t/html_tests.t
+++ b/tp/t/html_tests.t
@@ -785,6 +785,29 @@ my @file_tests = (
@anchor{index}
', {}, {'SPLIT' => 'node'},
],
+['file_name_case_insensitive_conflict_redirections',
+'@node Top
+@top top section
+
+@chapter Chapter
+
+@table @samp
+
+@item foo
+@anchor{foo}
+Some text about @samp{foo}
+
+@item Foo
+@anchor{Foo}
+Some text about @samp{Foo}
+
+@end table
+
+@xref{foo}
+
+@xref{Foo}
+', {}, {'SPLIT' => 'node', 'CASE_INSENSITIVE_FILENAMES' => 1},
+],
['file_name_conflict_with_user_defined',
'@node Top
@top top
diff --git
a/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections.pl
b/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections.pl
new file mode 100644
index 0000000000..c97895ea44
--- /dev/null
+++
b/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections.pl
@@ -0,0 +1,629 @@
+use vars qw(%result_texis %result_texts %result_trees %result_errors
+ %result_indices %result_sectioning %result_nodes %result_menus
+ %result_floats %result_converted %result_converted_errors
+ %result_elements %result_directions_text %result_indices_sort_strings);
+
+use utf8;
+
+$result_trees{'file_name_case_insensitive_conflict_redirections'} = {
+ 'contents' => [
+ {
+ 'type' => 'before_node_section'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'Top'
+ }
+ ],
+ 'info' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'nodes_manuals' => [
+ {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'Top'
+ }
+ ],
+ 'normalized' => 'Top'
+ },
+ 'info' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 1,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'top section'
+ }
+ ],
+ 'info' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'top',
+ 'contents' => [
+ {
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'extra' => {},
+ 'info' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 2,
+ 'macro' => ''
+ }
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'Chapter'
+ }
+ ],
+ 'info' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'chapter',
+ 'contents' => [
+ {
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'cmdname' => 'samp',
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 6,
+ 'macro' => ''
+ },
+ 'type' => 'command_as_argument'
+ }
+ ],
+ 'info' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'type' => 'block_line_arg'
+ }
+ ],
+ 'cmdname' => 'table',
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'type' => 'before_item'
+ },
+ {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'foo'
+ }
+ ],
+ 'info' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'item',
+ 'info' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 8,
+ 'macro' => ''
+ }
+ }
+ ],
+ 'type' => 'table_term'
+ },
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'foo'
+ }
+ ],
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'anchor',
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'foo'
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 9,
+ 'macro' => ''
+ }
+ },
+ {
+ 'text' => '
+',
+ 'type' => 'spaces_after_close_brace'
+ },
+ {
+ 'contents' => [
+ {
+ 'text' => 'Some text about '
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'foo'
+ }
+ ],
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'samp',
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 10,
+ 'macro' => ''
+ }
+ },
+ {
+ 'text' => '
+'
+ }
+ ],
+ 'type' => 'paragraph'
+ },
+ {
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'type' => 'table_definition'
+ }
+ ],
+ 'type' => 'table_entry'
+ },
+ {
+ 'contents' => [
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'Foo'
+ }
+ ],
+ 'info' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'item',
+ 'info' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 12,
+ 'macro' => ''
+ }
+ }
+ ],
+ 'type' => 'table_term'
+ },
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'Foo'
+ }
+ ],
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'anchor',
+ 'extra' => {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'Foo'
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 13,
+ 'macro' => ''
+ }
+ },
+ {
+ 'text' => '
+',
+ 'type' => 'spaces_after_close_brace'
+ },
+ {
+ 'contents' => [
+ {
+ 'text' => 'Some text about '
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'Foo'
+ }
+ ],
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'samp',
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 14,
+ 'macro' => ''
+ }
+ },
+ {
+ 'text' => '
+'
+ }
+ ],
+ 'type' => 'paragraph'
+ },
+ {
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ }
+ ],
+ 'type' => 'table_definition'
+ }
+ ],
+ 'type' => 'table_entry'
+ },
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'table'
+ }
+ ],
+ 'info' => {
+ 'spaces_after_argument' => '
+'
+ },
+ 'type' => 'line_arg'
+ }
+ ],
+ 'cmdname' => 'end',
+ 'extra' => {
+ 'text_arg' => 'table'
+ },
+ 'info' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 16,
+ 'macro' => ''
+ }
+ }
+ ],
+ 'extra' => {
+ 'command_as_argument' => {}
+ },
+ 'info' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 6,
+ 'macro' => ''
+ }
+ },
+ {
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'foo'
+ }
+ ],
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'xref',
+ 'extra' => {
+ 'label' => {},
+ 'node_argument' => {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'foo'
+ }
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 18,
+ 'macro' => ''
+ }
+ },
+ {
+ 'text' => '
+'
+ }
+ ],
+ 'type' => 'paragraph'
+ },
+ {
+ 'text' => '
+',
+ 'type' => 'empty_line'
+ },
+ {
+ 'contents' => [
+ {
+ 'args' => [
+ {
+ 'contents' => [
+ {
+ 'text' => 'Foo'
+ }
+ ],
+ 'type' => 'brace_command_arg'
+ }
+ ],
+ 'cmdname' => 'xref',
+ 'extra' => {
+ 'label' => {},
+ 'node_argument' => {
+ 'node_content' => [
+ {}
+ ],
+ 'normalized' => 'Foo'
+ }
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 20,
+ 'macro' => ''
+ }
+ },
+ {
+ 'text' => '
+'
+ }
+ ],
+ 'type' => 'paragraph'
+ }
+ ],
+ 'info' => {
+ 'spaces_before_argument' => ' '
+ },
+ 'source_info' => {
+ 'file_name' => '',
+ 'line_nr' => 4,
+ 'macro' => ''
+ }
+ }
+ ],
+ 'type' => 'document_root'
+};
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[1]{'extra'}{'node_content'}[0]
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[1]{'extra'}{'nodes_manuals'}[0]{'node_content'}[0]
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'contents'}[1]{'contents'}[1]{'contents'}[0]{'extra'}{'node_content'}[0]
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'contents'}[2]{'contents'}[1]{'contents'}[0]{'extra'}{'node_content'}[0]
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'contents'}[2]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'extra'}{'command_as_argument'}
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'args'}[0]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[3]{'contents'}[0]{'extra'}{'label'}
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'contents'}[1]{'contents'}[1]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[3]{'contents'}[0]{'extra'}{'node_argument'}{'node_content'}[0]
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[3]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[5]{'contents'}[0]{'extra'}{'label'}
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[1]{'contents'}[2]{'contents'}[1]{'contents'}[0];
+$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[5]{'contents'}[0]{'extra'}{'node_argument'}{'node_content'}[0]
=
$result_trees{'file_name_case_insensitive_conflict_redirections'}{'contents'}[3]{'contents'}[5]{'contents'}[0]{'args'}[0]{'contents'}[0];
+
+$result_texis{'file_name_case_insensitive_conflict_redirections'} = '@node Top
+@top top section
+
+@chapter Chapter
+
+@table @samp
+
+@item foo
+@anchor{foo}
+Some text about @samp{foo}
+
+@item Foo
+@anchor{Foo}
+Some text about @samp{Foo}
+
+@end table
+
+@xref{foo}
+
+@xref{Foo}
+';
+
+
+$result_texts{'file_name_case_insensitive_conflict_redirections'} = 'top
section
+***********
+
+1 Chapter
+*********
+
+
+foo
+Some text about foo
+
+Foo
+Some text about Foo
+
+
+foo
+
+Foo
+';
+
+$result_sectioning{'file_name_case_insensitive_conflict_redirections'} = {
+ 'structure' => {
+ 'section_childs' => [
+ {
+ 'cmdname' => 'top',
+ 'extra' => {
+ 'associated_node' => {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Top'
+ },
+ 'info' => {}
+ }
+ },
+ 'info' => {},
+ 'structure' => {
+ 'section_childs' => [
+ {
+ 'cmdname' => 'chapter',
+ 'info' => {},
+ 'structure' => {
+ 'section_level' => 1,
+ 'section_number' => 1,
+ 'section_up' => {},
+ 'toplevel_prev' => {},
+ 'toplevel_up' => {}
+ }
+ }
+ ],
+ 'section_level' => 0,
+ 'section_up' => {}
+ }
+ }
+ ],
+ 'section_level' => -1
+ }
+};
+$result_sectioning{'file_name_case_insensitive_conflict_redirections'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
=
$result_sectioning{'file_name_case_insensitive_conflict_redirections'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'file_name_case_insensitive_conflict_redirections'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'toplevel_prev'}
=
$result_sectioning{'file_name_case_insensitive_conflict_redirections'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'file_name_case_insensitive_conflict_redirections'}{'structure'}{'section_childs'}[0]{'structure'}{'section_childs'}[0]{'structure'}{'toplevel_up'}
=
$result_sectioning{'file_name_case_insensitive_conflict_redirections'}{'structure'}{'section_childs'}[0];
+$result_sectioning{'file_name_case_insensitive_conflict_redirections'}{'structure'}{'section_childs'}[0]{'structure'}{'section_up'}
= $result_sectioning{'file_name_case_insensitive_conflict_redirections'};
+
+$result_nodes{'file_name_case_insensitive_conflict_redirections'} = {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'associated_section' => {
+ 'cmdname' => 'top',
+ 'extra' => {},
+ 'info' => {},
+ 'structure' => {}
+ },
+ 'normalized' => 'Top'
+ },
+ 'info' => {}
+};
+
+$result_menus{'file_name_case_insensitive_conflict_redirections'} = {
+ 'cmdname' => 'node',
+ 'extra' => {
+ 'normalized' => 'Top'
+ },
+ 'info' => {}
+};
+
+$result_errors{'file_name_case_insensitive_conflict_redirections'} = [];
+
+
+$result_floats{'file_name_case_insensitive_conflict_redirections'} = {};
+
+
+$result_converted_errors{'file_html'}->{'file_name_case_insensitive_conflict_redirections'}
= [
+ {
+ 'error_line' => 'warning: @anchor `foo\' file Foo.html for redirection
exists
+',
+ 'file_name' => '',
+ 'line_nr' => 9,
+ 'macro' => '',
+ 'text' => '@anchor `foo\' file Foo.html for redirection exists',
+ 'type' => 'warning'
+ },
+ {
+ 'continuation' => 1,
+ 'error_line' => 'warning: conflict with @anchor `Foo\' redirection file
+',
+ 'file_name' => '',
+ 'line_nr' => 13,
+ 'macro' => '',
+ 'text' => 'conflict with @anchor `Foo\' redirection file',
+ 'type' => 'warning'
+ }
+];
+
+
+1;
diff --git
a/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections/res_html/Foo.html
b/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections/res_html/Foo.html
new file mode 100644
index 0000000000..8140645354
--- /dev/null
+++
b/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections/res_html/Foo.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<!-- Created by texinfo, http://www.gnu.org/software/texinfo/ -->
+<!-- This file redirects to the location of a node or anchor -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Foo (top section)</title>
+
+<meta name="description" content="Foo (top section)">
+<meta name="keywords" content="Foo (top section)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+
+<meta http-equiv="Refresh" content="0; url=index.html#Foo">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+</head>
+
+<body lang="en">
+
+<p>The node you are looking for is at <a href="index.html#Foo">Foo</a>.</p>
+</body>
diff --git
a/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections/res_html/index.html
b/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections/res_html/index.html
new file mode 100644
index 0000000000..1346d27f1b
--- /dev/null
+++
b/tp/t/results/html_tests/file_name_case_insensitive_conflict_redirections/res_html/index.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+<!-- Created by texinfo, http://www.gnu.org/software/texinfo/ -->
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Top (top section)</title>
+
+<meta name="description" content="Top (top section)">
+<meta name="keywords" content="Top (top section)">
+<meta name="resource-type" content="document">
+<meta name="distribution" content="global">
+<meta name="viewport" content="width=device-width,initial-scale=1">
+
+<link href="#Top" rel="start" title="Top">
+
+
+</head>
+
+<body lang="en">
+<div class="top-level-extent" id="Top">
+<h1 class="top" id="top-section">top section</h1>
+
+<ul class="mini-toc">
+<li><a href="#Chapter" accesskey="1">Chapter</a></li>
+</ul>
+<div class="chapter-level-extent" id="Chapter">
+<h2 class="chapter">1 Chapter</h2>
+
+<dl class="table">
+<dt>‘<samp class="samp">foo</samp>’</dt>
+<dd><a class="anchor" id="foo"></a><p>Some text about ‘<samp
class="samp">foo</samp>’
+</p>
+</dd>
+<dt>‘<samp class="samp">Foo</samp>’</dt>
+<dd><a class="anchor" id="Foo"></a><p>Some text about ‘<samp
class="samp">Foo</samp>’
+</p>
+</dd>
+</dl>
+
+<p>See <a class="xref" href="#foo">foo</a>
+</p>
+<p>See <a class="xref" href="#Foo">Foo</a>
+</p></div>
+</div>
+
+
+
+</body>
+</html>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: * tp/Texinfo/Convert/HTML.pm (output): normalize node redirection name before comparing with existing file names, in case case of file name needs to be normalized. Report from Torbjörn Svensson.,
Patrice Dumas <=