Two fixes related to following references in info viewer

This commit is contained in:
Vitezslav Crhonek 2017-07-10 10:54:48 +02:00
parent 8b535207db
commit 0a4c5e32a9
3 changed files with 47 additions and 2 deletions

View File

@ -0,0 +1,11 @@
diff -up texinfo-6.4/info/info-utils.c.orig texinfo-6.4/info/info-utils.c
--- texinfo-6.4/info/info-utils.c.orig 2017-07-10 10:37:50.713333292 +0200
+++ texinfo-6.4/info/info-utils.c 2017-07-10 10:38:16.342348756 +0200
@@ -1280,6 +1280,7 @@ scan_reference_label (REFERENCE *entry,
&entry->nodename);
if (!len)
return 0; /* Input invalid. */
+ canonicalize_whitespace (entry->nodename);
label_len += len;
}
else

View File

@ -0,0 +1,22 @@
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;

View File

@ -3,7 +3,7 @@
Summary: Tools needed to create Texinfo format documentation files
Name: texinfo
Version: 6.4
Release: 1%{?dist}
Release: 2%{?dist}
License: GPLv3+
Group: Applications/Publishing
Url: http://www.gnu.org/software/texinfo/
@ -13,10 +13,13 @@ Source2: info-dir
# Source5: macro definitions
Source5: macros.info
Patch0: texinfo-4.12-zlib.patch
# Patch1: this is needed just for koji/mock, all test pass fine in local build
# Patch1: this is needed just for koji/mock, all tests pass fine in local build
Patch1: texinfo-6.0-disable-failing-info-test.patch
# Patch2: rhbz#1348671, because of OSTree
Patch2: texinfo-6.1-install-info-use-create-tmp-then-rename-pattern.patch
# Patches 3-4 are already upstream
Patch3: texinfo-6.4-info-fix-following-more-than-one-line-cross-reference.patch
Patch4: texinfo-6.4-info-fix-possible-incorrect-selection-of-already-loaded-file.patch
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
Requires: perl >= 5.7.3, perl(Text::Unidecode)
@ -69,6 +72,8 @@ for printing using TeX.
%patch0 -p1 -b .zlib
%patch1 -p1 -b .disable-failing-info-test
%patch2 -p1 -b .install-info-use-create-tmp-then-rename-pattern
%patch3 -p1 -b .info-fix-following-more-than-one-line-cross-reference
%patch4 -p1 -b .info-fix-possible-incorrect-selection-of-already-loaded-file
%build
%configure --with-external-Text-Unidecode \
@ -171,6 +176,13 @@ fi
%{_mandir}/man1/pdftexi2dvi.1*
%changelog
* Mon Jul 10 2017 Vitezslav Crhonek <vcrhonek@redhat.com> - 6.4-2
- Fix broken reference following when the reference is split to
more than one line
- Fix possible incorrect selection of already loaded file when
following cross reference
Resolves: #1383057
* Tue Jun 27 2017 Vitezslav Crhonek <vcrhonek@redhat.com> - 6.4-1
- Update to texinfo-6.4
Resolves: #1464624