Package list texinfo / 6399195
New upstream version 6.4.90.dfsg.1 Norbert Preining 4 years ago
320 changed file(s) with 14178 addition(s) and 13479 deletion(s). Raw diff Collapse all Expand all
0 2017-07-10 Gavin Smith <gavinsmith0123@gmail.com>
1
2 * pretest 6.4.90
3 * configure.ac: Update version. Add dist-xz to options.
4
5 2017-07-10 Gavin Smith <gavinsmith0123@gmail.com>
6
7 * tp/Texinfo/Convert/XSParagraph: Run gnulib-tool --add-import.
8 * (top-level): Run gnulib-tool --add-import.
9
10 2017-07-10 Gavin Smith <gavinsmith0123@gmail.com>
11
12 * doc/Makefile.am (wwwdoc-build): Remove commands that could
13 build the "info" manual.
14
15 2017-07-10 Gavin Smith <gavinsmith0123@gmail.com>
16
17 * NEWS: Update with various news items.
18
19 2017-07-09 Gavin Smith <gavinsmith0123@gmail.com>
20
21 * info/nodes.c (info_find_subfile): When looking for an
22 already-loaded file, check that the names match either exactly,
23 or as an initial substring followed by a period. Previously,
24 any loaded file which had an initial substring that was the name
25 of the sought file would be accepted, which would be incorrect
26 for a case like "libc.info-11" matching when it was "libc.info-1"
27 that was wanted. Vitezslav Crhonek reported that this could
28 lead to failure when following cross-references.
29
30 * info/t/subfile-initial-match.sh: New test.
31
32 2017-07-09 Gavin Smith <gavinsmith0123@gmail.com>
33
34 * info/nodes.c (info_get_node_with_defaults): Only use the
35 directory from the current node's fullpath if this function was
36 passed a filename as an argument.
37
38 2017-07-09 Gavin Smith <gavinsmith0123@gmail.com>
39
40 * info/nodes.c
41 (get_filename_and_nodename, info_get_node_with_defaults):
42 Merge get_filename_and_nodename into caller.
43
44 2017-07-09 Gavin Smith <gavinsmith0123@gmail.com>
45
46 * info/nodes.c (build_tags_and_nodes): Call 'skip_node_separator'
47 in order not to start reading the tag table in the middle of an
48 "Indirect:" string.
49
50 2017-07-09 Gavin Smith <gavinsmith0123@gmail.com>
51
52 * info/nodes.c (info_load_file): If calling
53 'build_tags_and_nodes' didn't set the 'tags' array for the file
54 buffer, fail to load the file.
55 * info/info.c (add_initial_nodes): Check if info_load_file failed.
56
57 * info/t/malformed-split.sh: New test.
58
59 2017-07-09 Gavin Smith <gavinsmith0123@gmail.com>
60
61 * info/t/Init-inter.inc (run_ginfo): Shorten a comment.
62
63 2017-07-09 Gavin Smith <gavinsmith0123@gmail.com>
64
65 * info/nodes.c (info_find_file): Do not convert the filename to
66 lowercase and check for it again if a file was not found.
67
68 2017-07-06 Gavin Smith <gavinsmith0123@gmail.com>
69
70 * info/t/inc-sea-bs.sh: New test.
71
72 2017-07-05 Gavin Smith <gavinsmith0123@gmail.com>
73
74 * info/search.c (regexp_search): Call free_matches if the regex
75 could be compiled, but there were no matches. Free a string
76 buffer used for displaying an error message.
77 * info/session.c (info_search_in_node_internal): Do not call
78 free_matches. It could be called on uninitialised data leading
79 to a crash if the regex had an error in it. Marco Maggi reported
80 a crash for incremental search when a single \ was entered.
81
82 2017-07-05 Gavin Smith <gavinsmith0123@gmail.com>
83
84 * util/texi2dvi (sorted_index_filter): Remove code to list files
85 created with bibtex, as then xref_files_changed requires them to
86 exist (since change on 2017-06-21) and they won't if bibtex is
87 not being used. Report from Daniel Gerbet.
88
89 2017-07-04 Gavin Smith <gavinsmith0123@gmail.com>
90
91 * doc/texinfo.tex (\unicodechardefs):
92 Define U+25C7 as \diamond and remove definitions for U+25A1,
93 U+2A1D, U+2201, U+2127, U+21BE, U+2290, U+22B4, and U+22B5 which
94 didn't work. (Benno Schulenberg reported that U+25C7 didn't
95 work.)
96
97 2017-07-02 Gavin Smith <gavinsmith0123@gmail.com>
98
99 * tp/Texinfo/Parser.pm (_parse_texi) <@image>: Save
100 'input_perl_encoding' value on @image element.
101 * tp/Texinfo/Convert/Plaintext.pm (_image_text): Use it instead
102 of looking at the current value of INPUT_PERL_ENCODING.
103
104 2017-07-01 Gavin Smith <gavinsmith0123@gmail.com>
105
106 * tp/Texinfo/Parser.pm (_parse_texi_file): Set the parent key on
107 a created 'preamble' element.
108
109 2017-07-01 Gavin Smith <gavinsmith0123@gmail.com>
110
111 * tp/Texinfo/Convert/XSParagraph/configure.ac (fetch_conf): Put
112 all sed commands within an environment variable, 'sed_script'.
113 Assign 'sed_script' from a double-quoted string, using shell
114 variables to include awkward characters. This avoids there
115 being multiple level of quoting present which can be extremely
116 confusing, i.e., autoconf's quadrigraphs, quoting within the
117 backquoted string where sed is called, as well as sed's own
118 escaping of special characters.
119
120 * tp/Texinfo/MiscXS/configure.ac (fetch_conf): Make the same
121 change.
122
123 2017-07-01 Gavin Smith <gavinsmith0123@gmail.com>
124
125 * info/t/c-u-m-x-scroll-forward.sh, info/t/inc-sea-insensitive.sh,
126 info/t/search-split-after-index.sh, info/t/split-footnotes.sh,
127 info/t/star-note-non-whitespace.sh, info/t/tab-argument.sh,
128 info/t/xref-across-lines.sh: Quote argument to run_ginfo so that
129 quoting characters are preseved in the subshell that execs ginfo.
130
131 2017-07-01 Gavin Smith <gavinsmith0123@gmail.com>
132
133 * info/t/xref-across-lines-2.sh: New test.
134
135 2017-07-01 Gavin Smith <gavinsmith0123@gmail.com>
136
137 * info/info-utils.c (scan_reference_label): Canonicalize the
138 whitespace in the nodename, otherwise links can't be followed if
139 the nodename is split across a line.
140
141 2017-06-29 Gavin Smith <gavinsmith0123@gmail.com>
142
143 * tp/Texinfo/Convert/Converter.pm (_register_command_arg):
144 Copy function here from Parser.pm.
145 (_table_item_content_tree): Call it.
146
147 2017-06-29 Gavin Smith <gavinsmith0123@gmail.com>
148
149 * tp/Texinfo/Parser.pm (_parse_texi) <menu>: Don't store
150 a list of menus in 'unassociated_menus' array.
151 * tp/Texinfo/Transformations.pm (_reassociate_to_node)
152 (set_menus_to_simple_menu): Remove checks of
153 'unassociated_menus' array.
154
155 2017-06-29 Gavin Smith <gavinsmith0123@gmail.com>
156
157 * tp/Texinfo/Parser.pm (_parse_texi) <macro expansion>:
158 Add a check for the return value of _text_to_lines being empty.
159
160 2017-06-29 Gavin Smith <gavinsmith0123@gmail.com>
161
162 * tp/t/html_tests.t (simple_menu): Add @node and @top commands
163 so that the menu is inside a node.
164
165 2017-06-29 Gavin Smith <gavinsmith0123@gmail.com>
166
167 * tp/Texinfo/Transformations.pm (fill_gaps_in_sectioning): Call
168 Texinfo::Structuring::section_level to get sectioning level
169 (used in tp/t/test_fill_gaps_in_sectioning.t).
170
171 2017-06-29 Gavin Smith <gavinsmith0123@gmail.com>
172
173 * tp/Texinfo/Parser.pm (_section_level),
174 * tp/Texinfo/Structuring.pm (section_level): Move function to
175 Structuring.pm.
176
177 2017-06-29 Gavin Smith <gavinsmith0123@gmail.com>
178
179 * tp/Texinfo/Parser.pm (_parse_texi): Do not add 'level' value
180 on sectioning commands.
181 * tp/Texinfo/Structuring.pm (sectioning_structure): Add 'level'
182 value on element.
183 * tp/Texinfo/Convert/HTML.pm (_convert_heading_command),
184 * tp/Texinfo/Convert/Text.pm (heading):
185 Account for the case when 'level' is not set.
186 * texi2any.pl: Remove a comment.
187
188 2017-06-28 Gavin Smith <gavinsmith0123@gmail.com>
189
190 * tp/Texinfo/Parser.pm (_end_line) <@copying>: Removing handling
191 of INLINE_INSERTCOPYING variable. Also remove from the module
192 documentation section at the end of the file.
193 (%default_customization_variables): Remove INLINE_INSERTCOPYING.
194 * tp/Texinfo/Parser.pm (@variable_string_settables)
195 (@obsolete_variables): Move 'INLINE_INSERTCOPYING' to
196 @obsolete_variables.
197 * tp/t/plaintext_tests.t (inline_copying_inline_and_paragraph):
198 Remove.
199 * NEWS: Mention removal.
200 * doc/texinfo.texi (Other Customization Variables)
201 <INLINE_INSERTCOPYING>: Remove.
202
203 2017-06-27 Gavin Smith <gavinsmith0123@gmail.com>
204
205 * tp/Texinfo/Parser.pm (_text_to_lines): Do not return an array
206 containing a single empty string if the input is an empty
207 string; instead, return a completely empty array. This means
208 that parse_texi_line does not get as far into parsing for an
209 empty input.
210
211 2017-06-27 Gavin Smith <gavinsmith0123@gmail.com>
212
213 * tp/Texinfo/Parser.pm <root commands>: Do not associate a @part
214 command with a following sectioning command if another @part
215 command appears first. This means there is no special support
216 for @part pages following each other immediately.
217
218 2017-06-26 Gavin Smith <gavinsmith0123@gmail.com>
219
220 * info/t/Timeout-test.inc,
221 * info/t/Init-test.inc (timeout-test): Move code to timeout the
222 test to a shell function.
223
224 2017-06-26 Gavin Smith <gavinsmith0123@gmail.com>
225
226 * info/t/Init-inter.inc (run_ginfo): Time out test by running a
227 subshell in the background that kills the current shell inside
228 an "sh -c" command, and execing the ginfo program. Do not use a
229 FIFO to communicate that the process has finished.
230
231 * info/t/Timeout-test.inc: Do not use "read -t" to read from a
232 FIFO with a timeout. Use the "wait" shell builtin to wait for
233 the process to finish.
234
235 * info/t/Init-test.inc (cleanup): Eliminate use of SUBSHELL,
236 TIMED_OUT and FINISHEDFIFO variables.
237
238 2017-06-26 Gavin Smith <gavinsmith0123@gmail.com>
239
240 * info/t/Init-inter.inc (run_ginfo): Remove use of pgrep to get
241 PID of process. Get PID of ginfo process by running a subshell
242 with "sh -c", printing the value of $$ (the shell PID), and then
243 exec'ing the ginfo program.
244
245 2017-06-25 Gavin Smith <gavinsmith0123@gmail.com>
246
247 * tp/Texinfor/Parser.pm, tp/Texinfo/Common.pm
248 (complete_indices, _complete_indices): Move function to
249 Common.pm and rename.
250
251 2017-06-25 Gavin Smith <gavinsmith0123@gmail.com>
252
253 * tp/Texinfo/Parser.pm (_end_line) <@verbatiminclude>: Save
254 value of 'input_perl_encoding' on the element.
255 * tp/Texinfo/Common.pm (expand_verbatiminclude): Use the
256 saved value of 'input_perl_encoding' instead of looking at
257 'INPUT_PERL_ENCODING' conf value.
258
259 2017-06-25 Gavin Smith <gavinsmith0123@gmail.com>
260
261 * info/nodes.c (info_get_node_with_defaults): Remove code that
262 fell back to a man page. This got in the way of the code in
263 info_get_info_help_node that fell back to info-stnd.info if
264 info.info couldn't be loaded. Also, this code is called from
265 many places where falling back to a man page would definitely
266 not be what was wanted, so removing the manpage fallback option
267 makes the program more robust and easy to understand.
268 * NEWS: Mention info will not try to fall back to a man page if
269 it failed to follow a cross-reference.
270
271 2017-06-25 Gavin Smith <gavinsmith0123@gmail.com>
272
273 * tp/Texinfo/Convert/Plaintext.pm (_convert) <def commands>:
274 Change "@tie{ }" to "@tie{}" in document strings passed to gdt.
275 * tp/Texinfo/Parser.pm (_parse_texi) <closing a brace command>:
276 Don't check if we are being called from gdt and the closed
277 command was @tie.
278
279 2017-06-24 Gavin Smith <gavinsmith0123@gmail.com>
280
281 * tp/Texinfo/Parser.pm (_parse_texi): Remove debugging code
282 to dump parse tree every time a new line is read.
283
284 2017-06-24 Gavin Smith <gavinsmith0123@gmail.com>
285
286 * configure.ac: Increase version to 6.4dev. Remove "dist-xz"
287 option.
288
289 2017-06-23 Gavin Smith <gavinsmith0123@gmail.com>
290
291 * README-hacking: Change some instructions and remove some
292 others.
293
0294 2017-06-23 Gavin Smith <gavinsmith0123@gmail.com>
1295
2296 6.4 release.
295295 $(top_srcdir)/build-aux/missing \
296296 $(top_srcdir)/build-aux/tap-driver.sh \
297297 $(top_srcdir)/tp/Texinfo/ModulePath.pm.in ABOUT-NLS AUTHORS \
298 COPYING ChangeLog INSTALL NEWS README TODO build-aux/ar-lib \
299 build-aux/compile build-aux/config.guess \
298 COPYING ChangeLog INSTALL NEWS README README-alpha TODO \
299 build-aux/ar-lib build-aux/compile build-aux/config.guess \
300300 build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
301301 build-aux/install-sh build-aux/mdate-sh build-aux/missing \
302302 build-aux/texinfo.tex
10431043 VERSION = @VERSION@
10441044 WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
10451045 WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
1046 WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@
10461047 WINT_T_SUFFIX = @WINT_T_SUFFIX@
10471048 XGETTEXT = @XGETTEXT@
10481049 XGETTEXT_015 = @XGETTEXT_015@
0 $Id: NEWS 7802 2017-05-20 13:44:26Z gavin $
0 $Id: NEWS 7916 2017-07-10 17:52:54Z gavin $
11 This NEWS file records noteworthy changes, very tersely.
22 See the manual for detailed information.
33
99 are permitted in any medium without royalty provided the copyright
1010 notice and this notice are preserved.
1111
12 -------------------------------------------------------------------------------
12 ------------------------------------------------------------------------------
13
14 * info:
15 . some bugs fixed:
16 . a bug where a segfault could happen in the regex search, for
17 example when the user entered a single \ as the search string
18 . another bug which could make nodes inaccessible in long "split"
19 info files
20 . a bug where it was not possible to follow a cross-reference
21 that was split across more than one line has been fixed
22 . do not fall back to a man page if following a cross-reference in an
23 info file failed
24 . if looking for a file failed, do not convert the name of a file to
25 lower-case and look for it again
26
27 * texinfo.tex
28 . some faulty definitions for Unicode characters have been changed or
29 removed
30
31 * texi2dvi
32 . a bug that broke the processing of LaTeX files that did not
33 use BibTeX has been fixed
34
35 * texi2any
36 . `INLINE_INSERTCOPYING' removed as a customization variable
37
38
1339 6.4 (23 June 2017)
1440 * texi2any:
1541 . for HTML output, place section names before the manual in page
11451145 VERSION = @VERSION@
11461146 WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
11471147 WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
1148 WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@
11481149 WINT_T_SUFFIX = @WINT_T_SUFFIX@
11491150 XGETTEXT = @XGETTEXT@
11501151 XGETTEXT_015 = @XGETTEXT_015@
0 $Id: README 6951 2016-01-20 19:57:18Z gavin $
0 $Id: README 7842 2017-06-23 06:47:27Z gavin $
11 This is the README file for the GNU Texinfo distribution. Texinfo is
22 the preferred documentation format for GNU software.
33
0 $Id: README-alpha 6124 2015-02-13 20:22:54Z gavin $
1 This is the README-alpha file for GNU Texinfo.
2
3 Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
4 2001, 2002, 2003, 2004, 2005, 2011, 2012, 2014, 2015
5 Free Software Foundation, Inc.
6
7 Copying and distribution of this file, with or without modification,
8 are permitted in any medium without royalty provided the copyright
9 notice and this notice are preserved.
10
11 This is a test release!
12
13 The latest test release (if any) is available at
14 ftp://alpha.gnu.org/gnu/texinfo/
15
16 Please email comments and problem reports to bug-texinfo@gnu.org. You
17 are welcome to join that mailing list; to do so, please visit
18 http://lists.gnu.org/mailman/listinfo/bug-texinfo. (There is no
19 dedicated mailing list for pretests any more.)
20
21 If you see a problem in this release that you've already reported, feel
22 free to re-report it -- it's good to get a reminder. If you sent a
23 patch for a previous release, and you haven't received any feedback
24 about it, please do re-send it, it likely got lost.
25
26 For development environment information, see README-hacking.
0 $Id: README-hacking 7788 2017-05-15 18:56:25Z gavin $
0 $Id: README-hacking 7843 2017-06-23 17:58:55Z gavin $
11 This file describes the development environment for Texinfo.
22
33 Copyright 2002, 2003, 2005, 2006, 2007, 2008, 2010, 2011, 2012, 2013,
233233 # ... make diffs at official release:
234234 prev=5.2
235235 ver=6.0
236 cd $misc/archive/$pkg/prod
237 tar xf $txi/texinfo-$ver.tar.gz
236 tar xf texinfo-$ver.tar.gz
238237 tar xf texinfo-$prev.tar.gz
239238 diff -Nrc2 texinfo-$prev texinfo-$ver | xz >texinfo-$prev-$ver.diff.xz
240239 ls -l !$
241240 gnupload --to ftp.gnu.org:texinfo !$
242 rm -rf texinfo-$ver texinfo-$prev
243 ro texinfo-*$ver*
244
245 - To save in local archives:
246 pkg=texinfo
247 ver=6.0
248
249 mv -v $pkg-$ver.tar.xz* $misc/archive/$pkg/alpha/ #pretest
250 mv -v $pkg-$ver.tar.{gz,xz}* *.diff.xz $misc/archive/$pkg/prod/ #official
241
251242
252243 - When official release is out there ...
253244 update home page (texinfo.html) and commit as needed.
13701370
13711371 /* Define if you want regoff_t to be at least as wide POSIX requires. */
13721372 #undef _REGEX_LARGE_OFFSETS
1373
1374 /* For standard stat data types on VMS. */
1375 #undef _USE_STD_STAT
13731376
13741377 /* Define to rpl_ if the getopt replacement functions and variables should be
13751378 used. */
00 #! /bin/sh
11 # Guess values for system-dependent variables and create Makefiles.
2 # Generated by GNU Autoconf 2.69 for GNU Texinfo 6.4.
2 # Generated by GNU Autoconf 2.69 for GNU Texinfo 6.4.90.
33 #
44 # Report bugs to <bug-texinfo@gnu.org>.
55 #
579579 # Identity of this package.
580580 PACKAGE_NAME='GNU Texinfo'
581581 PACKAGE_TARNAME='texinfo'
582 PACKAGE_VERSION='6.4'
583 PACKAGE_STRING='GNU Texinfo 6.4'
582 PACKAGE_VERSION='6.4.90'
583 PACKAGE_STRING='GNU Texinfo 6.4.90'
584584 PACKAGE_BUGREPORT='bug-texinfo@gnu.org'
585585 PACKAGE_URL='http://www.gnu.org/software/texinfo/'
586586
778778 HAVE_UNISTD_H
779779 NEXT_AS_FIRST_DIRECTIVE_UNISTD_H
780780 NEXT_UNISTD_H
781 WINDOWS_STAT_INODES
781782 WINDOWS_64_BIT_OFF_T
782783 NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H
783784 NEXT_SYS_TYPES_H
20632064 # Omit some internal or obsolete options to make the list less imposing.
20642065 # This message is too long to be a string in the A/UX 3.1 sh.
20652066 cat <<_ACEOF
2066 \`configure' configures GNU Texinfo 6.4 to adapt to many kinds of systems.
2067 \`configure' configures GNU Texinfo 6.4.90 to adapt to many kinds of systems.
20672068
20682069 Usage: $0 [OPTION]... [VAR=VALUE]...
20692070
21332134
21342135 if test -n "$ac_init_help"; then
21352136 case $ac_init_help in
2136 short | recursive ) echo "Configuration of GNU Texinfo 6.4:";;
2137 short | recursive ) echo "Configuration of GNU Texinfo 6.4.90:";;
21372138 esac
21382139 cat <<\_ACEOF
21392140
22712272 test -n "$ac_init_help" && exit $ac_status
22722273 if $ac_init_version; then
22732274 cat <<\_ACEOF
2274 GNU Texinfo configure 6.4
2275 GNU Texinfo configure 6.4.90
22752276 generated by GNU Autoconf 2.69
22762277
22772278 Copyright (C) 2012 Free Software Foundation, Inc.
29802981 This file contains any messages produced by compilers while
29812982 running configure, to aid debugging if configure makes a mistake.
29822983
2983 It was created by GNU Texinfo $as_me 6.4, which was
2984 It was created by GNU Texinfo $as_me 6.4.90, which was
29842985 generated by GNU Autoconf 2.69. Invocation command line was
29852986
29862987 $ $0 $@
38823883
38833884 # Define the identity of the package.
38843885 PACKAGE='texinfo'
3885 VERSION='6.4'
3886 VERSION='6.4.90'
38863887
38873888
38883889 cat >>confdefs.h <<_ACEOF
92109211 #endif
92119212 /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
92129213 provided. */
9213 if (/* Try standardized names. */
9214 iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
9215 /* Try IRIX, OSF/1 names. */
9216 && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
9217 /* Try AIX names. */
9218 && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
9219 /* Try HP-UX names. */
9220 && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
9221 result |= 16;
9214 {
9215 /* Try standardized names. */
9216 iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
9217 /* Try IRIX, OSF/1 names. */
9218 iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
9219 /* Try AIX names. */
9220 iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
9221 /* Try HP-UX names. */
9222 iconv_t cd4 = iconv_open ("utf8", "eucJP");
9223 if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
9224 && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
9225 result |= 16;
9226 if (cd1 != (iconv_t)(-1))
9227 iconv_close (cd1);
9228 if (cd2 != (iconv_t)(-1))
9229 iconv_close (cd2);
9230 if (cd3 != (iconv_t)(-1))
9231 iconv_close (cd3);
9232 if (cd4 != (iconv_t)(-1))
9233 iconv_close (cd4);
9234 }
92229235 return result;
92239236
92249237 ;
1287512888
1287612889
1287712890
12891 $as_echo "#define _USE_STD_STAT 1" >>confdefs.h
12892
12893
12894
1287812895
1287912896
1288012897
1295012967
1295112968
1295212969
12970
12971
12972
12973
12974 WINDOWS_STAT_INODES=0
1295312975
1295412976
1295512977
1540315425 aix* | beos* | openbsd* | mirbsd* | irix*)
1540415426 FLOAT_H=float.h
1540515427 ;;
15406 freebsd*)
15428 freebsd* | dragonfly*)
1540715429 case "$host_cpu" in
1540815430 i[34567]86 )
1540915431 FLOAT_H=float.h
1543715459 ;;
1543815460 esac
1543915461 case "$host_os" in
15440 aix* | freebsd* | linux*)
15462 aix* | freebsd* | dragonfly* | linux*)
1544115463 if test -n "$FLOAT_H"; then
1544215464 REPLACE_FLOAT_LDBL=1
1544315465 fi
1839418416 if (!strcasestr (haystack, needle))
1839518417 result |= 1;
1839618418 }
18419 /* Free allocated memory, in case some sanitizer is watching. */
18420 free (haystack);
18421 free (needle);
1839718422 return result;
1839818423
1839918424 ;
2161321638 if (!strstr (haystack, needle))
2161421639 result |= 1;
2161521640 }
21641 /* Free allocated memory, in case some sanitizer is watching. */
21642 free (haystack);
21643 free (needle);
2161621644 return result;
2161721645
2161821646 ;
2415424182 #endif
2415524183 /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
2415624184 provided. */
24157 if (/* Try standardized names. */
24158 iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
24159 /* Try IRIX, OSF/1 names. */
24160 && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
24161 /* Try AIX names. */
24162 && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
24163 /* Try HP-UX names. */
24164 && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
24165 result |= 16;
24185 {
24186 /* Try standardized names. */
24187 iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
24188 /* Try IRIX, OSF/1 names. */
24189 iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
24190 /* Try AIX names. */
24191 iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
24192 /* Try HP-UX names. */
24193 iconv_t cd4 = iconv_open ("utf8", "eucJP");
24194 if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
24195 && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
24196 result |= 16;
24197 if (cd1 != (iconv_t)(-1))
24198 iconv_close (cd1);
24199 if (cd2 != (iconv_t)(-1))
24200 iconv_close (cd2);
24201 if (cd3 != (iconv_t)(-1))
24202 iconv_close (cd3);
24203 if (cd4 != (iconv_t)(-1))
24204 iconv_close (cd4);
24205 }
2416624206 return result;
2416724207
2416824208 ;
2601626056 # report actual input values of CONFIG_FILES etc. instead of their
2601726057 # values after options handling.
2601826058 ac_log="
26019 This file was extended by GNU Texinfo $as_me 6.4, which was
26059 This file was extended by GNU Texinfo $as_me 6.4.90, which was
2602026060 generated by GNU Autoconf 2.69. Invocation command line was
2602126061
2602226062 CONFIG_FILES = $CONFIG_FILES
2608426124 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
2608526125 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
2608626126 ac_cs_version="\\
26087 GNU Texinfo config.status 6.4
26127 GNU Texinfo config.status 6.4.90
2608826128 configured by $0, generated by GNU Autoconf 2.69,
2608926129 with options \\"\$ac_cs_config\\"
2609026130
00 # Process this file with autoconf to produce a configure script.
1 # $Id: configure.ac 7832 2017-06-18 13:06:10Z gavin $
1 # $Id: configure.ac 7845 2017-06-24 19:17:18Z gavin $
22 #
33 # Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
44 # 2012, 2013, 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
1111 # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1212 # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1313 #
14 AC_INIT([GNU Texinfo], [6.4], [bug-texinfo@gnu.org])
14 AC_INIT([GNU Texinfo], [6.4.90], [bug-texinfo@gnu.org])
1515
1616 dnl Must come before AM_INIT_AUTOMAKE.
1717 AC_CONFIG_AUX_DIR([build-aux])
0 # $Id: Makefile.am 7290 2016-07-31 08:40:28Z gavin $
0 # $Id: Makefile.am 7918 2017-07-10 17:59:21Z gavin $
11 # Makefile.am for texinfo/doc.
22 #
33 # Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
8888 # A nice side effect of using --html is to eliminate the fancy css default;
8989 # otherwise, we could use gendocs_template_min.
9090 #
91 manual1 = info
92 manual1_title = "GNU Info manual"
91 manual1 = info-stnd
92 manual1_title = "GNU standalone info manual"
9393 #
94 manual2 = info-stnd
95 manual2_title = "GNU standalone info manual"
96 #
97 manual3 = texinfo
98 manual3_title = "GNU Texinfo manual"
94 manual2 = texinfo
95 manual2_title = "GNU Texinfo manual"
9996 #
10097 # We also make a little HTML document for pod2texi script.
10198 pod2texi_pl = $(abs_top_srcdir)/Pod-Simple-Texinfo/pod2texi.pl
110107 && ln -s ../*.texi . \
111108 && $(gendocs_invoke) -o $(manual1) $(manual1) $(manual1_title) \
112109 && $(gendocs_invoke) -o $(manual2) $(manual2) $(manual2_title) \
113 && $(gendocs_invoke) -o $(manual3) $(manual3) $(manual3_title) \
114110 && pod2html $(pod2texi_pl) >pod2texi.html \
115111 && echo "Manuals ready for web distribution under: $(doctemp)/"
116112 #
118114 # http://www.gnu.org/software/texinfo/manual/
119115 wwwdoc-install:
120116 cp -arf $(doctemp)/$(manual1) $(doctemp)/$(manual2) \
121 $(doctemp)/$(manual3) $(doctemp)/pod2texi.html \
117 $(doctemp)/pod2texi.html \
122118 $(www_target)
123119 ls -ltu $(www_target)/*/html_node | tail # cvs rm -f obsolete files
124120 # followed by cvs add of new files and cvs commit.
1313
1414 @SET_MAKE@
1515
16 # $Id: Makefile.am 7290 2016-07-31 08:40:28Z gavin $
16 # $Id: Makefile.am 7918 2017-07-10 17:59:21Z gavin $
1717 # Makefile.am for texinfo/doc.
1818 #
1919 # Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
10691069 VERSION = @VERSION@
10701070 WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
10711071 WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
1072 WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@
10721073 WINT_T_SUFFIX = @WINT_T_SUFFIX@
10731074 XGETTEXT = @XGETTEXT@
10741075 XGETTEXT_015 = @XGETTEXT_015@
11831184 # A nice side effect of using --html is to eliminate the fancy css default;
11841185 # otherwise, we could use gendocs_template_min.
11851186 #
1186 manual1 = info
1187 manual1_title = "GNU Info manual"
1187 manual1 = info-stnd
1188 manual1_title = "GNU standalone info manual"
11881189 #
1189 manual2 = info-stnd
1190 manual2_title = "GNU standalone info manual"
1191 #
1192 manual3 = texinfo
1193 manual3_title = "GNU Texinfo manual"
1190 manual2 = texinfo
1191 manual2_title = "GNU Texinfo manual"
11941192 #
11951193 # We also make a little HTML document for pod2texi script.
11961194 pod2texi_pl = $(abs_top_srcdir)/Pod-Simple-Texinfo/pod2texi.pl
18391837 && ln -s ../*.texi . \
18401838 && $(gendocs_invoke) -o $(manual1) $(manual1) $(manual1_title) \
18411839 && $(gendocs_invoke) -o $(manual2) $(manual2) $(manual2_title) \
1842 && $(gendocs_invoke) -o $(manual3) $(manual3) $(manual3_title) \
18431840 && pod2html $(pod2texi_pl) >pod2texi.html \
18441841 && echo "Manuals ready for web distribution under: $(doctemp)/"
18451842 #
18471844 # http://www.gnu.org/software/texinfo/manual/
18481845 wwwdoc-install:
18491846 cp -arf $(doctemp)/$(manual1) $(doctemp)/$(manual2) \
1850 $(doctemp)/$(manual3) $(doctemp)/pod2texi.html \
1847 $(doctemp)/pod2texi.html \
18511848 $(www_target)
18521849 ls -ltu $(www_target)/*/html_node | tail # cvs rm -f obsolete files
18531850 # followed by cvs add of new files and cvs commit.
00 % Texinfo reference card.
1 % $Id: txirefcard.tex 7358 2016-09-10 20:26:36Z gavin $
1 % $Id: txirefcard.tex 7842 2017-06-23 06:47:27Z gavin $
22 %
33 %**start of header
44 % This file can be printed with 1, 2, or 3 columns per page (see below).
00 @set UPDATED 21 May 2017
11 @set UPDATED-MONTH May 2017
2 @set EDITION 6.4
3 @set VERSION 6.4
2 @set EDITION 6.4.90
3 @set VERSION 6.4.90
0 @set UPDATED 24 May 2017
1 @set UPDATED-MONTH May 2017
2 @set EDITION 6.4
3 @set VERSION 6.4
0 @set UPDATED 28 June 2017
1 @set UPDATED-MONTH June 2017
2 @set EDITION 6.4.90
3 @set VERSION 6.4.90
22 % Load plain if necessary, i.e., if running under initex.
33 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
44 %
5 \def\texinfoversion{2017-06-04.19}
5 \def\texinfoversion{2017-07-04.16}
66 %
77 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
88 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
1100811008 \DeclareUnicodeCharacter{2113}{\ensuremath\ell}%
1100911009 \DeclareUnicodeCharacter{2118}{\ensuremath\wp}%
1101011010 \DeclareUnicodeCharacter{211C}{\ensuremath\Re}%
11011 \DeclareUnicodeCharacter{2127}{\ensuremath\mho}%
1101211011 \DeclareUnicodeCharacter{2135}{\ensuremath\aleph}%
1101311012 \DeclareUnicodeCharacter{2190}{\ensuremath\leftarrow}%
1101411013 \DeclareUnicodeCharacter{2191}{\ensuremath\uparrow}%
1102411023 \DeclareUnicodeCharacter{21AA}{\ensuremath\hookrightarrow}%
1102511024 \DeclareUnicodeCharacter{21BC}{\ensuremath\leftharpoonup}%
1102611025 \DeclareUnicodeCharacter{21BD}{\ensuremath\leftharpoondown}%
11027 \DeclareUnicodeCharacter{21BE}{\ensuremath\upharpoonright}%
1102811026 \DeclareUnicodeCharacter{21C0}{\ensuremath\rightharpoonup}%
1102911027 \DeclareUnicodeCharacter{21C1}{\ensuremath\rightharpoondown}%
1103011028 \DeclareUnicodeCharacter{21CC}{\ensuremath\rightleftharpoons}%
1103311031 \DeclareUnicodeCharacter{21D3}{\ensuremath\Downarrow}%
1103411032 \DeclareUnicodeCharacter{21D4}{\ensuremath\Leftrightarrow}%
1103511033 \DeclareUnicodeCharacter{21D5}{\ensuremath\Updownarrow}%
11036 \DeclareUnicodeCharacter{21DD}{\ensuremath\leadsto}%
11037 \DeclareUnicodeCharacter{2201}{\ensuremath\complement}%
1103811034 \DeclareUnicodeCharacter{2202}{\ensuremath\partial}%
1103911035 \DeclareUnicodeCharacter{2205}{\ensuremath\emptyset}%
1104011036 \DeclareUnicodeCharacter{2207}{\ensuremath\nabla}%
1106811064 \DeclareUnicodeCharacter{2283}{\ensuremath\supset}%
1106911065 \DeclareUnicodeCharacter{2286}{\ensuremath\subseteq}%
1107011066 \DeclareUnicodeCharacter{228E}{\ensuremath\uplus}%
11071 \DeclareUnicodeCharacter{228F}{\ensuremath\sqsubset}%
11072 \DeclareUnicodeCharacter{2290}{\ensuremath\sqsupset}%
1107311067 \DeclareUnicodeCharacter{2291}{\ensuremath\sqsubseteq}%
1107411068 \DeclareUnicodeCharacter{2292}{\ensuremath\sqsupseteq}%
1107511069 \DeclareUnicodeCharacter{2293}{\ensuremath\sqcap}%
1108411078 \DeclareUnicodeCharacter{22A4}{\ensuremath\ptextop}%
1108511079 \DeclareUnicodeCharacter{22A5}{\ensuremath\bot}%
1108611080 \DeclareUnicodeCharacter{22A8}{\ensuremath\models}%
11087 \DeclareUnicodeCharacter{22B4}{\ensuremath\unlhd}%
11088 \DeclareUnicodeCharacter{22B5}{\ensuremath\unrhd}%
1108911081 \DeclareUnicodeCharacter{22C0}{\ensuremath\bigwedge}%
1109011082 \DeclareUnicodeCharacter{22C1}{\ensuremath\bigvee}%
1109111083 \DeclareUnicodeCharacter{22C2}{\ensuremath\bigcap}%
1110111093 \DeclareUnicodeCharacter{2322}{\ensuremath\frown}%
1110211094 \DeclareUnicodeCharacter{2323}{\ensuremath\smile}%
1110311095 %
11104 \DeclareUnicodeCharacter{25A1}{\ensuremath\Box}%
1110511096 \DeclareUnicodeCharacter{25B3}{\ensuremath\triangle}%
1110611097 \DeclareUnicodeCharacter{25B7}{\ensuremath\triangleright}%
1110711098 \DeclareUnicodeCharacter{25BD}{\ensuremath\bigtriangledown}%
1110811099 \DeclareUnicodeCharacter{25C1}{\ensuremath\triangleleft}%
11109 \DeclareUnicodeCharacter{25C7}{\ensuremath\Diamond}%
11100 \DeclareUnicodeCharacter{25C7}{\ensuremath\diamond}%
1111011101 \DeclareUnicodeCharacter{2660}{\ensuremath\spadesuit}%
1111111102 \DeclareUnicodeCharacter{2661}{\ensuremath\heartsuit}%
1111211103 \DeclareUnicodeCharacter{2662}{\ensuremath\diamondsuit}%
1112811119 \DeclareUnicodeCharacter{2A02}{\ensuremath\bigotimes}%
1112911120 \DeclareUnicodeCharacter{2A04}{\ensuremath\biguplus}%
1113011121 \DeclareUnicodeCharacter{2A06}{\ensuremath\bigsqcup}%
11131 \DeclareUnicodeCharacter{2A1D}{\ensuremath\Join}%
1113211122 \DeclareUnicodeCharacter{2A3F}{\ensuremath\amalg}%
1113311123 \DeclareUnicodeCharacter{2AAF}{\ensuremath\preceq}%
1113411124 \DeclareUnicodeCharacter{2AB0}{\ensuremath\succeq}%
939939 VERSION = @VERSION@
940940 WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
941941 WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
942 WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@
942943 WINT_T_SUFFIX = @WINT_T_SUFFIX@
943944 XGETTEXT = @XGETTEXT@
944945 XGETTEXT_015 = @XGETTEXT_015@
255255 Hey! @strong{The above document had some coding errors, which are explained below:}
256256
257257 @table @asis
258 @item Around line 1797:
259 @anchor{Texinfo::Convert::Converter Around line 1797:}
258 @item Around line 1810:
259 @anchor{Texinfo::Convert::Converter Around line 1810:}
260260
261261 '=item' outside of any '=over'
262262
109109 An array reference of directories in which @code{@@include} files should be
110110 searched for. Default contains the working directory, @file{.}.
111111
112 @item INLINE_INSERTCOPYING
113 @anchor{Texinfo::Parser INLINE_INSERTCOPYING}
114
115 If set, @code{@@insertcopying} is replaced by the @code{@@copying} content as if
116 @code{@@insertcopying} was a user-defined macro. In the default case, it is
117 considered to be a simple @@-command and kept as-is in the tree.
118
119112 @item IGNORE_BEFORE_SETFILENAME
120113 @anchor{Texinfo::Parser IGNORE_BEFORE_SETFILENAME}
121114
249242
250243 An array of successive @code{@@dircategory} and @code{@@direntry} as they appear
251244 in the document.
252
253 @item unassociated_menus
254 @anchor{Texinfo::Parser unassociated_menus}
255
256 An array of menus that are not associated with a node.
257245
258246 @item novalidate
259247 @anchor{Texinfo::Parser novalidate}
00 @set UPDATED 21 May 2017
11 @set UPDATED-MONTH May 2017
2 @set EDITION 6.4
3 @set VERSION 6.4
2 @set EDITION 6.4.90
3 @set VERSION 6.4.90
0 @set UPDATED 24 May 2017
1 @set UPDATED-MONTH May 2017
2 @set EDITION 6.4
3 @set VERSION 6.4
0 @set UPDATED 28 June 2017
1 @set UPDATED-MONTH June 2017
2 @set EDITION 6.4.90
3 @set VERSION 6.4.90
13861386 -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
13871387 -e 's|@''NEXT_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \
13881388 -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \
1389 -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \
13891390 < $(srcdir)/sys_types.in.h; \
13901391 } > $@-t && \
13911392 mv $@-t $@
10791079 VERSION = @VERSION@
10801080 WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
10811081 WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
1082 WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@
10821083 WINT_T_SUFFIX = @WINT_T_SUFFIX@
10831084 XGETTEXT = @XGETTEXT@
10841085 XGETTEXT_015 = @XGETTEXT_015@
23742375 -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
23752376 -e 's|@''NEXT_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \
23762377 -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \
2378 -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \
23772379 < $(srcdir)/sys_types.in.h; \
23782380 } > $@-t && \
23792381 mv $@-t $@
271271 else
272272 #endif
273273 vfprintf (stderr, message, args);
274 va_end (args);
275274
276275 ++error_message_count;
277276 if (errnum)
321320
322321 va_start (args, message);
323322 error_tail (status, errnum, message, args);
323 va_end (args);
324324
325325 #ifdef _LIBC
326326 _IO_funlockfile (stderr);
391391
392392 va_start (args, message);
393393 error_tail (status, errnum, message, args);
394 va_end (args);
394395
395396 #ifdef _LIBC
396397 _IO_funlockfile (stderr);
6262 /* On FreeBSD/x86 6.4, the 'long double' type really has only 53 bits of
6363 precision in the compiler but 64 bits of precision at runtime. See
6464 <http://lists.gnu.org/archive/html/bug-gnulib/2008-07/msg00063.html>. */
65 #if defined __i386__ && defined __FreeBSD__
65 #if defined __i386__ && (defined __FreeBSD__ || defined __DragonFly__)
6666 /* Number of mantissa units, in base FLT_RADIX. */
6767 # undef LDBL_MANT_DIG
6868 # define LDBL_MANT_DIG 64
4646 # define opterr __GETOPT_ID (opterr)
4747 # define optind __GETOPT_ID (optind)
4848 # define optopt __GETOPT_ID (optopt)
49
50 /* The system's getopt.h may have already included getopt-core.h to
51 declare the unprefixed identifiers. Undef _GETOPT_CORE_H so that
52 getopt-core.h declares them with prefixes. */
53 # undef _GETOPT_CORE_H
4954 #endif
5055
5156 #include <getopt-core.h>
4444 # define getopt_long_only __GETOPT_ID (getopt_long_only)
4545 # define option __GETOPT_ID (option)
4646 # define _getopt_internal __GETOPT_ID (getopt_internal)
47
48 /* The system's getopt.h may have already included getopt-ext.h to
49 declare the unprefixed identifiers. Undef _GETOPT_EXT_H so that
50 getopt-ext.h declares them with prefixes. */
51 # undef _GETOPT_EXT_H
4752 #endif
4853
4954 /* Standalone applications get correct prototypes for getopt_long and
184184 #include <string.h>
185185
186186 #if (((__GNUC__ >= 3 || __GNUG__ >= 2) && !defined __STRICT_ANSI__) \
187 /* || __STDC_VERSION__ >= 199901L */ )
187 /* || __STDC_VERSION__ == 199901L
188 || (__STDC_VERSION__ >= 201112L && !defined __STDC_NO_VLA__) */ )
188189 # define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS 1
189190 #else
190191 # define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS 0
218218 : (max) >> (b) < (a))
219219
220220 /* True if __builtin_add_overflow (A, B, P) works when P is non-null. */
221 #define _GL_HAS_BUILTIN_OVERFLOW (5 <= __GNUC__)
221 #if 5 <= __GNUC__ && !defined __ICC
222 # define _GL_HAS_BUILTIN_OVERFLOW 1
223 #else
224 # define _GL_HAS_BUILTIN_OVERFLOW 0
225 #endif
222226
223227 /* True if __builtin_add_overflow_p (A, B, C) works. */
224228 #define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__)
7474 # include "relocatable.h"
7575 #else
7676 # define relocate(pathname) (pathname)
77 # define relocate2(pathname,allocatedp) (*(allocatedp) = NULL, (pathname))
7778 #endif
7879
7980 /* Get LIBDIR. */
128129 if (cp == NULL)
129130 {
130131 #if !(defined DARWIN7 || defined VMS || defined WINDOWS_NATIVE || defined __CYGWIN__ || defined OS2)
132 char *malloc_dir = NULL;
131133 const char *dir;
132134 const char *base = "charset.alias";
133135 char *file_name;
136138 necessary for running the testsuite before "make install". */
137139 dir = getenv ("CHARSETALIASDIR");
138140 if (dir == NULL || dir[0] == '\0')
139 dir = relocate (LIBDIR);
141 dir = relocate2 (LIBDIR, &malloc_dir);
140142
141143 /* Concatenate dir and base into freshly allocated file_name. */
142144 {
152154 memcpy (file_name + dir_len + add_slash, base, base_len + 1);
153155 }
154156 }
157
158 free (malloc_dir);
155159
156160 if (file_name == NULL)
157161 /* Out of memory. Treat the file as empty. */
3434 # include "streq.h"
3535 # include "verify.h"
3636
37 #ifndef FALLTHROUGH
38 # if __GNUC__ < 7
39 # define FALLTHROUGH ((void) 0)
40 # else
41 # define FALLTHROUGH __attribute__ ((__fallthrough__))
42 # endif
43 #endif
3744
3845 verify (sizeof (mbstate_t) >= 4);
3946
7380 break;
7481 case 3:
7582 buf[2] = pstate[3];
76 /*FALLTHROUGH*/
83 FALLTHROUGH;
7784 case 2:
7885 buf[1] = pstate[2];
79 /*FALLTHROUGH*/
86 FALLTHROUGH;
8087 case 1:
8188 buf[0] = pstate[1];
8289 p = buf;
4141 # define _GL_WINDOWS_64_BIT_OFF_T 1
4242 #endif
4343
44 /* Override dev_t and ino_t if distinguishable inodes support is requested
45 on native Windows. */
46 #if @WINDOWS_STAT_INODES@
47
48 # if @WINDOWS_STAT_INODES@ == 2
49 /* Experimental, not useful in Windows 10. */
50
51 /* Define dev_t to a 64-bit type. */
52 # if !defined GNULIB_defined_dev_t
53 typedef unsigned long long int rpl_dev_t;
54 # undef dev_t
55 # define dev_t rpl_dev_t
56 # define GNULIB_defined_dev_t 1
57 # endif
58
59 /* Define ino_t to a 128-bit type. */
60 # if !defined GNULIB_defined_ino_t
61 /* MSVC does not have a 128-bit integer type.
62 GCC has a 128-bit integer type __int128, but only on 64-bit targets. */
63 typedef struct { unsigned long long int _gl_ino[2]; } rpl_ino_t;
64 # undef ino_t
65 # define ino_t rpl_ino_t
66 # define GNULIB_defined_ino_t 1
67 # endif
68
69 # else /* @WINDOWS_STAT_INODES@ == 1 */
70
71 /* Define ino_t to a 64-bit type. */
72 # if !defined GNULIB_defined_ino_t
73 typedef unsigned long long int rpl_ino_t;
74 # undef ino_t
75 # define ino_t rpl_ino_t
76 # define GNULIB_defined_ino_t 1
77 # endif
78
79 # endif
80
81 /* Indicator, for gnulib internal purposes. */
82 # define _GL_WINDOWS_STAT_INODES @WINDOWS_STAT_INODES@
83
84 #endif
85
4486 /* MSVC 9 defines size_t in <stddef.h>, not in <sys/types.h>. */
4587 /* But avoid namespace pollution on glibc systems. */
4688 #if ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__) \
115115 # include "isnanl-nolibm.h"
116116 # include "printf-frexpl.h"
117117 # include "fpucw.h"
118 #endif
119
120 #ifndef FALLTHROUGH
121 # if __GNUC__ < 7
122 # define FALLTHROUGH ((void) 0)
123 # else
124 # define FALLTHROUGH __attribute__ ((__fallthrough__))
125 # endif
118126 #endif
119127
120128 /* Default parameters. */
48364844 *fbp++ = 'l';
48374845 # endif
48384846 #endif
4839 /*FALLTHROUGH*/
4847 FALLTHROUGH;
48404848 case TYPE_LONGINT:
48414849 case TYPE_ULONGINT:
48424850 #if HAVE_WINT_T
48604868 #endif
48614869 *fbp = dp->conversion;
48624870 #if USE_SNPRINTF
4863 # if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
4871 # if ! (((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) \
4872 && !defined __UCLIBC__) \
4873 || (defined __APPLE__ && defined __MACH__) \
4874 || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
48644875 fbp[1] = '%';
48654876 fbp[2] = 'n';
48664877 fbp[3] = '\0';
48744885 in format strings in writable memory may crash the program
48754886 (if compiled with _FORTIFY_SOURCE=2), so we should avoid it
48764887 in this situation. */
4888 /* On Mac OS X 10.3 or newer, we know that snprintf's return
4889 value conforms to ISO C 99: the tests gl_SNPRINTF_RETVAL_C99
4890 and gl_SNPRINTF_TRUNCATION_C99 pass.
4891 Therefore we can avoid using %n in this situation.
4892 On Mac OS X 10.13 or newer, the use of %n in format strings
4893 in writable memory by default crashes the program, so we
4894 should avoid it in this situation. */
48774895 /* On native Windows systems (such as mingw), we can avoid using
48784896 %n because:
48794897 - Although the gl_SNPRINTF_TRUNCATION_C99 test fails,
4343 #if 7 <= __GNUC__
4444 # define xalloc_oversized(n, s) \
4545 __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1)
46 #elif 5 <= __GNUC__ && !__STRICT_ANSI__
46 #elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__
4747 # define xalloc_oversized(n, s) \
4848 (__builtin_constant_p (n) && __builtin_constant_p (s) \
4949 ? __xalloc_oversized (n, s) \
66 # unlimited permission to copy and/or distribute it, with or without
77 # modifications, as long as this notice is preserved.
88
9 # serial 11 argz.m4
9 # serial 12 argz.m4
1010
1111 AC_DEFUN([gl_FUNC_ARGZ],
1212 [gl_PREREQ_ARGZ
1313
1414 AC_REQUIRE([AC_C_RESTRICT])
15 AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
1516
1617 AC_CHECK_HEADERS([argz.h], [], [], [AC_INCLUDES_DEFAULT])
1718
0 # float_h.m4 serial 9
0 # float_h.m4 serial 10
11 dnl Copyright (C) 2007, 2009-2017 Free Software Foundation, Inc.
22 dnl This file is free software; the Free Software Foundation
33 dnl gives unlimited permission to copy and/or distribute it,
1313 aix* | beos* | openbsd* | mirbsd* | irix*)
1414 FLOAT_H=float.h
1515 ;;
16 freebsd*)
16 freebsd* | dragonfly*)
1717 case "$host_cpu" in
1818 changequote(,)dnl
1919 i[34567]86 )
4141 ;;
4242 esac
4343 case "$host_os" in
44 aix* | freebsd* | linux*)
44 aix* | freebsd* | dragonfly* | linux*)
4545 if test -n "$FLOAT_H"; then
4646 REPLACE_FLOAT_LDBL=1
4747 fi
0 # iconv.m4 serial 20
1 dnl Copyright (C) 2000-2002, 2007-2014, 2016 Free Software Foundation, Inc.
0 # iconv.m4 serial 21
1 dnl Copyright (C) 2000-2002, 2007-2014, 2016-2017 Free Software Foundation, Inc.
22 dnl This file is free software; the Free Software Foundation
33 dnl gives unlimited permission to copy and/or distribute it,
44 dnl with or without modifications, as long as this notice is preserved.
166166 #endif
167167 /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
168168 provided. */
169 if (/* Try standardized names. */
170 iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1)
171 /* Try IRIX, OSF/1 names. */
172 && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1)
173 /* Try AIX names. */
174 && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1)
175 /* Try HP-UX names. */
176 && iconv_open ("utf8", "eucJP") == (iconv_t)(-1))
177 result |= 16;
169 {
170 /* Try standardized names. */
171 iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
172 /* Try IRIX, OSF/1 names. */
173 iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
174 /* Try AIX names. */
175 iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
176 /* Try HP-UX names. */
177 iconv_t cd4 = iconv_open ("utf8", "eucJP");
178 if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
179 && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
180 result |= 16;
181 if (cd1 != (iconv_t)(-1))
182 iconv_close (cd1);
183 if (cd2 != (iconv_t)(-1))
184 iconv_close (cd2);
185 if (cd3 != (iconv_t)(-1))
186 iconv_close (cd3);
187 if (cd4 != (iconv_t)(-1))
188 iconv_close (cd4);
189 }
178190 return result;
179191 ]])],
180192 [am_cv_func_iconv_works=yes], ,
0 # printf.m4 serial 53
0 # printf.m4 serial 54
11 dnl Copyright (C) 2003, 2007-2017 Free Software Foundation, Inc.
22 dnl This file is free software; the Free Software Foundation
33 dnl gives unlimited permission to copy and/or distribute it,
587587 darwin[1-6].*) gl_cv_func_printf_directive_f="guessing no";;
588588 darwin*) gl_cv_func_printf_directive_f="guessing yes";;
589589 # Guess yes on Solaris >= 2.10.
590 solaris2.[1-9][0-9]*) gl_cv_func_printf_sizes_c99="guessing yes";;
591 solaris*) gl_cv_func_printf_sizes_c99="guessing no";;
590 solaris2.[1-9][0-9]*) gl_cv_func_printf_directive_f="guessing yes";;
591 solaris*) gl_cv_func_printf_directive_f="guessing no";;
592592 # If we don't know, assume the worst.
593593 *) gl_cv_func_printf_directive_f="guessing no";;
594594 esac
0 # strcasestr.m4 serial 21
0 # strcasestr.m4 serial 22
11 dnl Copyright (C) 2005, 2007-2017 Free Software Foundation, Inc.
22 dnl This file is free software; the Free Software Foundation
33 dnl gives unlimited permission to copy and/or distribute it,
101101 if (!strcasestr (haystack, needle))
102102 result |= 1;
103103 }
104 /* Free allocated memory, in case some sanitizer is watching. */
105 free (haystack);
106 free (needle);
104107 return result;
105108 ]])],
106109 [gl_cv_func_strcasestr_linear=yes], [gl_cv_func_strcasestr_linear=no],
0 # strstr.m4 serial 17
0 # strstr.m4 serial 18
11 dnl Copyright (C) 2008-2017 Free Software Foundation, Inc.
22 dnl This file is free software; the Free Software Foundation
33 dnl gives unlimited permission to copy and/or distribute it,
9898 if (!strstr (haystack, needle))
9999 result |= 1;
100100 }
101 /* Free allocated memory, in case some sanitizer is watching. */
102 free (haystack);
103 free (needle);
101104 return result;
102105 ]])],
103106 [gl_cv_func_strstr_linear=yes], [gl_cv_func_strstr_linear=no],
0 # sys_types_h.m4 serial 6
0 # sys_types_h.m4 serial 8
11 dnl Copyright (C) 2011-2017 Free Software Foundation, Inc.
22 dnl This file is free software; the Free Software Foundation
33 dnl gives unlimited permission to copy and/or distribute it,
55
66 AC_DEFUN_ONCE([gl_SYS_TYPES_H],
77 [
8 dnl Use sane struct stat types in OpenVMS 8.2 and later.
9 AC_DEFINE([_USE_STD_STAT], 1, [For standard stat data types on VMS.])
10
811 AC_REQUIRE([gl_SYS_TYPES_H_DEFAULTS])
912 gl_NEXT_HEADERS([sys/types.h])
1013
1619
1720 dnl Whether to override the 'off_t' type.
1821 AC_REQUIRE([gl_TYPE_OFF_T])
22
23 dnl Whether to override the 'dev_t' and 'ino_t' types.
24 m4_ifdef([gl_WINDOWS_STAT_INODES], [
25 AC_REQUIRE([gl_WINDOWS_STAT_INODES])
26 ], [
27 WINDOWS_STAT_INODES=0
28 ])
29 AC_SUBST([WINDOWS_STAT_INODES])
1930 ])
2031
2132 AC_DEFUN([gl_SYS_TYPES_H_DEFAULTS],
0 # $Id: Makefile.am 7804 2017-05-20 15:51:33Z gavin $
0 # $Id: Makefile.am 7911 2017-07-09 15:12:16Z gavin $
11 # Makefile.am for texinfo/info.
22 #
33 # Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012,
4 # 2013, 2014, 2015, 2016 Free Software Foundation, Inc.
4 # 2013, 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
55 #
66 # This file is free software; as a special exception the author gives
77 # unlimited permission to copy and/or distribute it, with or without
9292 t/no-file.sh \
9393 t/node-no-file.sh \
9494 t/split.sh \
95 t/malformed-split.sh \
9596 t/relative-path.sh \
9697 t/file-relative-path.sh \
9798 t/dir.sh \
119120 t/tab-no-xref.sh \
120121 t/tab-skip-node.sh \
121122 t/xref-across-lines.sh \
123 t/xref-across-lines-2.sh \
122124 t/body-start.sh \
123125 t/end-of-line.sh \
124126 t/goal-column.sh \
152154 t/inc-sea-forward-nonregex.sh \
153155 t/inc-sea-insensitive.sh \
154156 t/inc-sea-history.sh \
157 t/inc-sea-bs.sh \
155158 t/gc-split.sh \
156159 t/anchor-positions.sh \
157160 t/quoted-label-as-target.sh \
165168
166169 EXTRA_DIST += $(TESTS) $(XFAIL_TESTS) \
167170 t/README t/infodir \
168 t/Init-inter.inc t/Init-test.inc t/Timeout-test.inc \
171 t/Init-inter.inc t/Init-test.inc \
169172 t/Infokey-config t/node-target
170173 dist-hook:
171174 rm -rf `find $(distdir)/t/infodir -name '*~'`
1313
1414 @SET_MAKE@
1515
16 # $Id: Makefile.am 7804 2017-05-20 15:51:33Z gavin $
16 # $Id: Makefile.am 7911 2017-07-09 15:12:16Z gavin $
1717 # Makefile.am for texinfo/info.
1818 #
1919 # Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012,
20 # 2013, 2014, 2015, 2016 Free Software Foundation, Inc.
20 # 2013, 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
2121 #
2222 # This file is free software; as a special exception the author gives
2323 # unlimited permission to copy and/or distribute it, with or without
12131213 VERSION = @VERSION@
12141214 WCHAR_T_SUFFIX = @WCHAR_T_SUFFIX@
12151215 WINDOWS_64_BIT_OFF_T = @WINDOWS_64_BIT_OFF_T@
1216 WINDOWS_STAT_INODES = @WINDOWS_STAT_INODES@
12161217 WINT_T_SUFFIX = @WINT_T_SUFFIX@
12171218 XGETTEXT = @XGETTEXT@
12181219 XGETTEXT_015 = @XGETTEXT_015@
12871288
12881289 LDADD = $(top_builddir)/gnulib/lib/libgnu.a $(TERMLIBS) $(LIBINTL) $(LIBICONV)
12891290 EXTRA_DIST = pcterm.c $(TESTS) $(XFAIL_TESTS) t/README t/infodir \
1290 t/Init-inter.inc t/Init-test.inc t/Timeout-test.inc \
1291 t/Infokey-config t/node-target
1291 t/Init-inter.inc t/Init-test.inc t/Infokey-config \
1292 t/node-target
12921293 ginfo_SOURCES = dir.c display.c display.h doc.h dribble.c dribble.h \
12931294 echo-area.c echo-area.h \
12941295 filesys.c filesys.h footnotes.c footnotes.h indices.c indices.h \
13321333 t/no-file.sh \
13331334 t/node-no-file.sh \
13341335 t/split.sh \
1336 t/malformed-split.sh \
13351337 t/relative-path.sh \
13361338 t/file-relative-path.sh \
13371339 t/dir.sh \
13591361 t/tab-no-xref.sh \
13601362 t/tab-skip-node.sh \
13611363 t/xref-across-lines.sh \
1364 t/xref-across-lines-2.sh \
13621365 t/body-start.sh \
13631366 t/end-of-line.sh \
13641367 t/goal-column.sh \
13921395 t/inc-sea-forward-nonregex.sh \
13931396 t/inc-sea-insensitive.sh \
13941397 t/inc-sea-history.sh \
1398 t/inc-sea-bs.sh \
13951399 t/gc-split.sh \
13961400 t/anchor-positions.sh \
13971401 t/quoted-label-as-target.sh \
18101814 --log-file $$b.log --trs-file $$b.trs \
18111815 $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
18121816 "$$tst" $(AM_TESTS_FD_REDIRECT)
1817 t/malformed-split.sh.log: t/malformed-split.sh
1818 @p='t/malformed-split.sh'; \
1819 b='t/malformed-split.sh'; \
1820 $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
1821 --log-file $$b.log --trs-file $$b.trs \
1822 $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
1823 "$$tst" $(AM_TESTS_FD_REDIRECT)
18131824 t/relative-path.sh.log: t/relative-path.sh
18141825 @p='t/relative-path.sh'; \
18151826 b='t/relative-path.sh'; \
19992010 --log-file $$b.log --trs-file $$b.trs \
20002011 $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
20012012 "$$tst" $(AM_TESTS_FD_REDIRECT)
2013 t/xref-across-lines-2.sh.log: t/xref-across-lines-2.sh
2014 @p='t/xref-across-lines-2.sh'; \
2015 b='t/xref-across-lines-2.sh'; \
2016 $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
2017 --log-file $$b.log --trs-file $$b.trs \
2018 $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
2019 "$$tst" $(AM_TESTS_FD_REDIRECT)
20022020 t/body-start.sh.log: t/body-start.sh
20032021 @p='t/body-start.sh'; \
20042022 b='t/body-start.sh'; \
22262244 t/inc-sea-history.sh.log: t/inc-sea-history.sh
22272245 @p='t/inc-sea-history.sh'; \
22282246 b='t/inc-sea-history.sh'; \
2247 $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
2248 --log-file $$b.log --trs-file $$b.trs \
2249 $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
2250 "$$tst" $(AM_TESTS_FD_REDIRECT)
2251 t/inc-sea-bs.sh.log: t/inc-sea-bs.sh
2252 @p='t/inc-sea-bs.sh'; \
2253 b='t/inc-sea-bs.sh'; \
22292254 $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
22302255 --log-file $$b.log --trs-file $$b.trs \
22312256 $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
00 /* info-utils.c -- miscellanous.
1 $Id: info-utils.c 7818 2017-06-03 20:52:27Z gavin $
1 $Id: info-utils.c 7888 2017-07-01 13:51:33Z gavin $
22
33 Copyright 1993, 1998, 2003, 2004, 2007, 2008, 2009, 2011, 2012,
44 2013, 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
12771277 {
12781278 len = read_quoted_string (inptr + label_len, ":", max_lines,
12791279 &entry->nodename);
1280 canonicalize_whitespace (entry->nodename);
12801281 if (!len)
12811282 return 0; /* Input invalid. */
12821283 label_len += len;
00 /* info.c -- Display nodes of Info files in multiple windows.
1 $Id: info.c 7817 2017-05-27 17:01:01Z gavin $
1 $Id: info.c 7911 2017-07-09 15:12:16Z gavin $
22
33 Copyright 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
44 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,
374374 node_nodename = 0;
375375
376376 file_buffer = info_find_file (node_filename);
377 if (!file_buffer)
378 continue;
377379
378380 /* First look for an exact match. */
379381 for (j = 0; (tag = file_buffer->tags[j]); j++)
00 /* nodes.c -- how to get an Info file and node.
1 $Id: nodes.c 7831 2017-06-18 12:50:18Z gavin $
1 $Id: nodes.c 7915 2017-07-09 18:51:00Z gavin $
22
33 Copyright 1993, 1998, 1999, 2000, 2002, 2003, 2004, 2006, 2007,
44 2008, 2009, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Free Software
128128 return;
129129
130130 /* Skip "Indirect:" line. */
131 position += skip_node_separator (file_buffer->contents + position);
131132 position += strlen (INDIRECT_TABLE_LABEL);
132133 position += strspn (file_buffer->contents + position, "\r\n");
133134
630631 else
631632 fullpath = xstrdup (filename);
632633
633 /* FIXME: Put the following in info_find_fullpath, or remove
634 it altogether. */
635 /* If the file referenced by the name returned from info_find_fullpath ()
636 doesn't exist, then try again with the last part of the filename
637 appearing in lowercase. */
638 /* This is probably not needed at all on those systems which define
639 FILENAME_CMP to be mbscasecmp. But let's do it anyway, lest some
640 network redirector supports case sensitivity. */
641 if (!fullpath)
642 {
643 char *lowered_name;
644 char *tmp_basename;
645
646 lowered_name = xstrdup (filename);
647 tmp_basename = filename_non_directory (lowered_name);
648
649 while (*tmp_basename)
650 {
651 if (isupper (*tmp_basename))
652 *tmp_basename = tolower (*tmp_basename);
653
654 tmp_basename++;
655 }
656
657 fullpath = info_find_fullpath (lowered_name, 0);
658
659 free (lowered_name);
660 }
661
662634 /* If the file wasn't found, give up, returning a NULL pointer. */
663635 if (!fullpath)
664636 return NULL;
677649 char *with_extension = 0;
678650 int i;
679651 FILE_BUFFER *file_buffer = 0;
652 int fullpath_len = strlen (fullpath);
680653
681654 /* First try to find the file in our list of already loaded files. */
682655 if (info_loaded_files)
684657 for (i = 0; (file_buffer = info_loaded_files[i]); i++)
685658 /* Check if fullpath starts the name of the recorded file (extra
686659 extensions like ".info.gz" could be added.) */
687 if (!strncmp (file_buffer->fullpath, fullpath, strlen (fullpath)))
660 if (!strncmp (file_buffer->fullpath, fullpath, fullpath_len)
661 && (file_buffer->fullpath[fullpath_len] == '\0'
662 || file_buffer->fullpath[fullpath_len] == '.'))
688663 {
689664 struct stat new_info, *old_info;
690665
753728 get_file_character_encoding (file_buffer);
754729
755730 if (!is_subfile)
756 build_tags_and_nodes (file_buffer);
731 {
732 build_tags_and_nodes (file_buffer);
733 if (!file_buffer->tags)
734 {
735 free (file_buffer->fullpath);
736 free (file_buffer->filename);
737 free (file_buffer);
738 return 0;
739 }
740 }
757741 else
758742 file_buffer->flags |= N_Subfile;
759743
860844 /* Functions for node creation and retrieval. */
861845
862846 static long get_node_length (SEARCH_BINDING *binding);
863 static void get_filename_and_nodename (NODE *node,
864 char **filename, char **nodename,
865 char *filename_in, char *nodename_in);
866847 static void node_set_body_start (NODE *node);
867848 static int adjust_nodestart (FILE_BUFFER *file_buffer, TAG *tag);
868849
942923
943924 info_recent_file_error = NULL;
944925
945 get_filename_and_nodename (defaults, &filename, &nodename,
946 filename_in, nodename_in);
926 filename = filename_in;
927 if (filename_in)
928 {
929 filename = xstrdup (filename_in);
930 if (follow_strategy == FOLLOW_REMAIN
931 && defaults && defaults->fullpath
932 && filename_in)
933 {
934 /* Find the directory in the filename for defaults, and look in
935 that directory first. */
936 char *file_in_same_dir;
937 char saved_char, *p;
938
939 p = defaults->fullpath + strlen (defaults->fullpath);
940 while (p > defaults->fullpath && !IS_SLASH (*p))
941 p--;
942
943 if (p > defaults->fullpath)
944 {
945 saved_char = *p;
946 *p = 0;
947
948 file_in_same_dir = info_add_extension (defaults->fullpath,
949 filename, 0);
950 if (file_in_same_dir)
951 file_buffer = info_find_file (file_in_same_dir);
952 free (file_in_same_dir);
953 *p = saved_char;
954 }
955 }
956 }
957 else
958 {
959 if (defaults)
960 filename = xstrdup (defaults->fullpath);
961 else
962 filename = xstrdup ("dir");
963 }
964
965 if (nodename_in && *nodename_in)
966 nodename = xstrdup (nodename_in);
967 else
968 /* If NODENAME is not specified, it defaults to "Top". */
969 nodename = xstrdup ("Top");
947970
948971 /* If the file to be looked up is "dir", build the contents from all of
949972 the "dir"s and "localdir"s found in INFOPATH. */
959982 goto cleanup_and_exit;
960983 }
961984
962
963 if (follow_strategy == FOLLOW_REMAIN
964 && defaults && defaults->fullpath)
965 {
966 /* Find the directory in the filename for defaults, and look in
967 that directory first. */
968 char *file_in_same_dir;
969 char saved_char, *p;
970
971 p = defaults->fullpath + strlen (defaults->fullpath);
972 while (p > defaults->fullpath && !IS_SLASH (*p))
973 p--;
974
975 if (p > defaults->fullpath)
976 {
977 saved_char = *p;
978 *p = 0;
979
980 file_in_same_dir = info_add_extension (defaults->fullpath,
981 filename, 0);
982 if (file_in_same_dir)
983 file_buffer = info_find_file (file_in_same_dir);
984 free (file_in_same_dir);
985 *p = saved_char;
986 }
987 }
988
989985 if (!file_buffer)
990986 file_buffer = info_find_file (filename);
991987
993989 {
994990 /* Look for the node. */
995991 node = info_get_node_of_file_buffer (file_buffer, nodename);
996 }
997
998 if (!file_buffer)
999 {
1000 /* Try to find a man page with this name as a fall back. */
1001 node = get_manpage_node (filename);
1002 if (!node)
1003 {
1004 if (filesys_error_number)
1005 info_recent_file_error =
1006 filesys_error_string (filename, filesys_error_number);
1007 }
1008992 }
1009993
1010994 /* If the node not found was "Top", try again with different case. */
10281012 info_get_node (char *filename_in, char *nodename_in)
10291013 {
10301014 return info_get_node_with_defaults (filename_in, nodename_in, 0);
1031 }
1032
1033 /* Get filename and nodename of node to load using defaults from NODE.
1034 Output values should be freed by caller. */
1035 static void
1036 get_filename_and_nodename (NODE *node,
1037 char **filename, char **nodename,
1038 char *filename_in, char *nodename_in)
1039 {
1040 *filename = filename_in;
1041
1042 /* If FILENAME is not specified, it defaults to "dir". */
1043 if (filename_in)
1044 *filename = xstrdup (filename_in);
1045 else
1046 {
1047 if (node)
1048 *filename = xstrdup (node->fullpath);
1049 else
1050 *filename = xstrdup ("dir");
1051 }
1052
1053 if (nodename_in && *nodename_in)
1054 *nodename = xstrdup (nodename_in);
1055 else
1056 /* If NODENAME is not specified, it defaults to "Top". */
1057 *nodename = xstrdup ("Top");
10581015 }
10591016
10601017 static void
00 /* search.c -- searching large bodies of text.
1 $Id: search.c 7714 2017-04-11 06:40:52Z gavin $
1 $Id: search.c 7907 2017-07-05 19:16:44Z gavin $
22
33 Copyright 1993, 1997, 1998, 2002, 2004, 2007, 2008, 2009, 2011, 2013,
44 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
173173 state->match_count = match_count;
174174 }
175175
176 /* Search BUFFER for REGEXP. Pass back the list of matches
177 in MATCH_STATE. */
176 /* Search BUFFER for REGEXP. If matches are found, pass back the list of
177 matches in MATCH_STATE. */
178178 enum search_result
179179 regexp_search (char *regexp, int is_literal, int is_insensitive,
180180 char *buffer, size_t buflen,
200200 char *buf = xmalloc (size);
201201 regerror (result, &preg, buf, size);
202202 info_error (_("regexp error: %s"), buf);
203 free (buf);
203204 return search_invalid;
204205 }
205206
214215 extend_matches (match_state);
215216
216217 if (match_state->match_count == 0)
217 return search_not_found;
218 {
219 free_matches (match_state);
220 return search_not_found;
221 }
218222 else
219223 return search_success;
220224 }
00 /* session.c -- user windowing interface to Info.
1 $Id: session.c 7812 2017-05-24 06:58:11Z gavin $
1 $Id: session.c 7907 2017-07-05 19:16:44Z gavin $
22
33 Copyright 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
44 2004, 2007, 2008, 2009, 2011, 2012, 2013, 2014, 2015, 2016, 2017
39523952 }
39533953
39543954 if (result != search_success)
3955 {
3956 free_matches (&matches);
3957 return result;
3958 }
3955 return result;
39593956
39603957 if (node->flags & N_Simple)
39613958 {
5050 # Avoid ginfo complaining that terminal is too dumb
5151 TERM=vt100; export TERM
5252
53 FINISHEDFIFO=t/`basename $0.finished`
54
5553 # See cleanup in Init-test.inc.
5654 findprog stty && { STTY=stty ; reset_required=yes ; }
5755 test $reset_required=yes && { $STTY | grep [-]echo ; } && reset_required=no
9391
9492 run_ginfo ()
9593 {
96 rm -f $FINISHEDFIFO
97 mkfifo $FINISHEDFIFO
98 { # Close fd opened to control FIFO in subshell so pseudotty can exit
99 # for an EOF. This prevents lingering processes if a test is
100 # interrupted.
101 exec 7>&- ;
102 exec 8>$FINISHEDFIFO ;
103 $GINFO $GINFO_OPTIONS "$@" ;
104 test $? -eq 0 || echo failure >$FINISHEDFIFO ;
105 echo finished >$FINISHEDFIFO ; } 0<>$PTS_DEVICE 1<&0 &
106 SUBSHELL=$!
107 exec 8<$FINISHEDFIFO
94 sh -c "
95 exec 7>&- ; # Close fd from parent shell
10896
109 # Although we don't write to the FIFO in this process, we still need
110 # to open it for writing, because if the above subshell exits before
111 # we read from it, we won't be able to open it - even though
112 # "finished" is buffered.
113 exec 9>$FINISHEDFIFO
97 (sleep 3 ; kill \$\$) &
98 exec $GINFO $GINFO_OPTIONS $* 0<>$PTS_DEVICE 1<&0 ;" &
11499
115 # Check for pgrep
116 if findprog pgrep; then
117 # Get the PID of the running ginfo process. Look for a process called
118 # "ginfo" whose parent process is the subshell executed by the previous
119 # command.
120 echo 'Fetching PID of ginfo process under test...' >&2
121 GINFO_PID=
122
123 # Try 3 times and then give up. The process may never have started,
124 # have started under a different name, or have already exited.
125 for i in 1 2 3; do
126 GINFO_PID=`pgrep -P $SUBSHELL $GINFO_NAME ; \
127 test $? -eq 0 || test $? -eq 1 || exit 99`
128
129 # This use of pgrep is likely not portable (works on procps).
130 # Check if it is likely to have worked.
131
132 # Exit status was anything other than 0 or 1
133 test $? -eq 99 && { GINFO_PID=unknown; break; }
134
135 # More than one line in output
136 echo $GINFO_PID | wc -l | grep '^0$\|^1$' >/dev/null \
137 || { GINFO_PID=unknown; break; }
138
139 # Non-numeral characters present
140 echo $GINFO_PID | grep -v '^[0-9]*$' >/dev/null
141 test $? -eq 0 && { GINFO_PID=unknown; break; }
142
143 GINFO_PID=`echo $GINFO_PID | tr -d '\n'`
144
145 test "$GINFO_PID" = "" || break
146 sleep 1 # Give subshell time to spawn ginfo process
147 done
148 test "$GINFO_PID" = "" && GINFO_PID=unknown
149 echo ...$GINFO_PID >&2
150 else
151 echo 'pgrep program not found - cannot get PID of ginfo process' >&2
152 GINFO_PID=unknown
153 fi
100 GINFO_PID=$!
154101 }
0 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
0 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
11 #
22 # This program is free software; you can redistribute it and/or modify
33 # it under the terms of the GNU General Public License as published by
4949
5050 # Not an interactive test
5151 PTY_PID=0
52 SUBSHELL=0
5352
5453 # Get error messages in English
5554 LC_ALL=C; export LC_ALL
7069 {
7170 # Delete created files and kill spawned processes if any.
7271 test $PTY_PID -ne 0 && kill $PTY_PID
73 test $SUBSHELL -ne 0 && kill $SUBSHELL
7472
7573 rm -f $GINFO_OUTPUT
7674 rm -f $PIPEIN $PTY_TYPE
77 rm -f $FINISHEDFIFO
7875
7976 # We do this because some versions of ksh93 (including that in
8077 # Solaris 11) have a bug where a timed-out "read -t" can mess up
8178 # the terminal settings, leading to characters not being echoed.
8279 # This is only done if we don't start with "-echo" at the beginning.
8380 test $reset_required = yes && { $STTY | grep '[-]echo' ; } && $STTY sane
84
85 if test -n "$TIMED_OUT"; then
86 exit 1
87 fi
8881
8982 #killall `basename $0` # see below
9083 exit $RETVAL
9588
9689 #cleanup
9790
91 timeout_test ()
92 {
93 wait $GINFO_PID
94 status=$?
95
96 RETVAL=0
97 if test $status != 0; then
98 RETVAL=1
99 fi
100
101 # Program is gone, so avoid trying to kill it in cleanup
102 GINFO_PID=0
103 }
104
+0
-75
info/t/Timeout-test.inc less more
0 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 #
2 # This program is free software; you can redistribute it and/or modify
3 # it under the terms of the GNU General Public License as published by
4 # the Free Software Foundation; either version 3, or (at your option)
5 # any later version.
6 #
7 # This program is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY; without even the implied warranty of
9 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 # GNU General Public License for more details.
11 #
12 # You should have received a copy of the GNU General Public License
13 # along with this program. If not, see <http://www.gnu.org/licenses/>.
14
15 # Shell script snippet. Wait for program to finish.
16
17 # Not timed out yet
18 TIMED_OUT=
19
20 # Attempt to test if "read -t" works. Under Solaris 10, read -t below
21 # should exit the subshell with an error exit status. Under some other
22 # shells the subshell will not exit but the "read -t" will have an exit
23 # status of 2, representing a syntax error.
24 status=0
25 (read -t 0 ; test $? != 2 ; exit $?)
26 if test $? != 0; then
27 # skip test below
28 status=2
29 fi
30
31 # If that succeeded, now check that "read -t 0" has no output, which could
32 # be an error message.
33 if test $status != 2; then
34 (read -t 0 2>&1 ) | grep .
35 test $? = 0 && status=2
36 fi
37 # This last test was needed under OpenBSD 5.5, where
38 # "read -t 0" has an exit status of 1, not 2
39
40 if test $status != 2; then
41 read -t 3 FINISHED <$FINISHEDFIFO
42 status=$?
43 fi
44
45 RETVAL=0
46 if test $status = 1; then
47 echo 'read -t failed - probably end-of-file' >&2
48 RETVAL=1
49
50 elif test $status != 0 -a $status -le 128 ; then
51 # Exit status of 'read' should be 0 on a successful read, or
52 # greater than 128 if it timed out.
53 rm -f $FINISHEDFIFO
54 echo 'read -t not supported - test skipped' >&2
55 RETVAL=77
56 cleanup
57 elif test "$FINISHED" = failure; then
58 echo 'Program exited unsuccessfully' >&2
59 RETVAL=1
60
61 elif test "$FINISHED" != finished; then
62 # Kill ginfo if we have its PID. Failing this, it will probably exit
63 # with an I/O error when pseudotty is killed in Cleanup.inc.
64 test "$GINFO_PID" != unknown && kill $GINFO_PID
65
66 echo 'Program timed out after 3 seconds' >&2
67 TIMED_OUT=1
68 fi
69
70 # Subshell is gone, so avoid trying to kill it in cleanup
71 SUBSHELL=0
72
73 rm -f $FINISHEDFIFO
74
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2929 printf 'ganchor-2\r\002\002\002\002\002\002' >$PTY_TYPE
3030 printf '\002\002\002\002\002\002\002\002\rDq' >$PTY_TYPE
3131
32 . $t/Timeout-test.inc
32 timeout_test
3333
3434 if test ! -f $GINFO_OUTPUT; then
3535 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2525 # on there being no "intera" entry in "dir".
2626 run_ginfo --all intera
2727 printf 'Dq' >$PTY_TYPE
28 . $t/Timeout-test.inc
28 timeout_test
2929
3030 grep '^File: intera.info, Node: Top' $GINFO_OUTPUT
3131 RETVAL=$?
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2323 run_ginfo -f anchor-positions
2424 printf q >$PTY_TYPE
2525
26 . $t/Timeout-test.inc
26 timeout_test
2727 cleanup
2828
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Check that node headers aren't included in searches
2222 printf 'sPotential match\r\rDq' >$PTY_TYPE &
2323
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014, 2015, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2727 LINES=7; export LINES
2828 COLUMNS=80; export COLUMNS
2929
30 run_ginfo -f intera -n 'Scroll four lines'
30 run_ginfo "-f intera -n 'Scroll four lines'"
3131
3232 # C-u M-x scroll-forward should scroll four lines, not four screens
3333 printf '\025\033xscroll-forward\r' >$PTY_TYPE
3434 printf '\rDq' >$PTY_TYPE
3535
36 . $t/Timeout-test.inc
36 timeout_test
3737
3838 # Return non-zero (test failure) if files differ
3939 diff $GINFO_OUTPUT $t/node-target
2323 # place in.
2424 printf '\0302sblah\r\0300q' >$PTY_TYPE
2525
26 . $t/Timeout-test.inc
26 timeout_test
2727 cleanup
2828
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 # Follow a dir entry to a file in a subdirectory of infodir
2121 run_ginfo subdir
2222 printf 'Dq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 cat $GINFO_OUTPUT
2626 grep '^File: file-in-subdir.info' $GINFO_OUTPUT
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2323 run_ginfo -v hide-note-references=On file-in-subdir
2424
2525 printf q >$PTY_TYPE
26 . $t/Timeout-test.inc
26 timeout_test
2727
2828 cleanup
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2424 export INFOPATH
2525 run_ginfo
2626 printf q >$PTY_TYPE
27 . $t/Timeout-test.inc
27 timeout_test
2828
2929 cleanup
3030
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Check that typing C-e on an empty line doesn't go to previous line
2222 printf '\x0e\x0e\x0e\x0e\x0e\x05\x0e\rDq' >$PTY_TYPE
2323
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2222 # incremental search. Refresh the screen afterwards to increase the
2323 # chances of trying to access freed file contents.
2424 printf '\023aa\033[B\014q' >$PTY_TYPE
25 . $t/Timeout-test.inc
25 timeout_test
2626
2727 cleanup
2828
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2222 printf '/^Goal column test\r\016' >$PTY_TYPE
2323 printf '\005\016\016\006\006' >$PTY_TYPE
2424 printf '\rDq' >$PTY_TYPE
25 . $t/Timeout-test.inc
25 timeout_test
2626
2727 diff $GINFO_OUTPUT $t/node-target
2828 RETVAL=$?
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Go to a node with colons and commas in its name with "g"
2222 printf 'g\tColo\t\r\t\rDq' >$PTY_TYPE
2323
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
0 #!/bin/sh
1 # Copyright (C) 2017 Free Software Foundation, Inc.
2 #
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 3, or (at your option)
6 # any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program. If not, see <http://www.gnu.org/licenses/>.
15
16 srcdir=${srcdir:-.}
17 . $srcdir/t/Init-test.inc
18 . $t/Init-inter.inc
19
20 run_ginfo -f intera -n Top
21
22 # Do a incremental search and enter a single backslash. This is to
23 # test that it doesn't crash when the input is not valid.
24 printf '\023' >$PTY_TYPE
25 printf '\\\n' >$PTY_TYPE
26 printf q >$PTY_TYPE
27
28 timeout_test
29
30 cleanup
31
00 #!/bin/sh
1 # Copyright (C) 2014, 2015, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2626 printf 'R\023matchxy\010\010' >$PTY_TYPE
2727 printf '\023\023\023\r\006\rDq' >$PTY_TYPE
2828
29 . $t/Timeout-test.inc
29 timeout_test
3030
3131 # Return non-zero (test failure) if files differ
3232 diff $GINFO_OUTPUT $t/node-target
00 #!/bin/sh
1 # Copyright (C) 2014, 2015, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2626 printf '\023matchxy\010\010' >$PTY_TYPE
2727 printf '\023\023\023\r\006\rDq' >$PTY_TYPE
2828
29 . $t/Timeout-test.inc
29 timeout_test
3030
3131 # Return non-zero (test failure) if files differ
3232 diff $GINFO_OUTPUT $t/node-target
00 #!/bin/sh
1 # Copyright (C) 2014, 2015, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2929 RETVAL=$?
3030
3131 printf 'lDq' >$PTY_TYPE
32 . $t/Timeout-test.inc
32 timeout_test
3333
3434 if test $RETVAL = 0; then
3535 grep 'Node: Top' $GINFO_OUTPUT
00 #!/bin/sh
1 # Copyright (C) 2014, 2015, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
1717 . $srcdir/t/Init-test.inc
1818 . $t/Init-inter.inc
1919
20 run_ginfo -f intera -n 'Incremental search case-insensitive'
20 run_ginfo "-f intera -n 'Incremental search case-insensitive'"
2121
2222 # Search for "match" with incremental search, adding an upper-case character
2323 # to make the search case-sensitive. Delete it and check the search goes back
2525 printf '\023matchX\010' >$PTY_TYPE
2626 printf '\023\023\r\rDq' >$PTY_TYPE
2727
28 . $t/Timeout-test.inc
28 timeout_test
2929
3030 # Return non-zero (test failure) if files differ
3131 diff $GINFO_OUTPUT $t/node-target
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2727 # We exited the "i" prompt with "xxx\r" instead of "\007" because
2828 # C-g leads typeahead to be discarded so it would not be reliable.
2929
30 . $t/Timeout-test.inc
30 timeout_test
3131
3232 cleanup
3333
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f index-search
2121 # Check that pressing tab to complete works for index search
2222 printf 'i\t\rDq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 grep '^Node: Node 2' $GINFO_OUTPUT
2626 RETVAL=$?
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Follow an menu item from the index node to a node where physical lines
2222 # don't match logical lines.
2323 printf 'gIndex\r\t\t\r\rDq' >$PTY_TYPE
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2222 # entry and select it.
2323 printf 'Ibc\r\016\016\016\016\016\016\016\016\016\rDq' >$PTY_TYPE
2424
25 . $t/Timeout-test.inc
25 timeout_test
2626
2727 # Return non-zero (test failure) if files differ
2828 diff $GINFO_OUTPUT $t/node-target
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Follow an index entry
2222 printf 'iabc\rDq' >$PTY_TYPE
2323
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
Binary diff not shown
0 
1 Indirect:
2 split-1: 1000
3 split-10: 2000
0 
1 Node: One
2
3 This is node one.
0 
1 Node: Two
2
3 This is node two.
0 
1 Indirect:
2 subfile-initial-match-1: 1000
3 subfile-initial-match-10: 2000
4 
5 Tag Table:
6 (Indirect)
7 Node: One1000
8 Node: Two2000
9 
10 End Tag Table
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121
2222 # Try to go back in history when there is no earlier node
2323 printf lq >$PTY_TYPE
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 cleanup
2727
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121
2222 # Wrap round to top node when last node does not have Top as Up
2323 printf ']]]Dq' >$PTY_TYPE
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 grep 'Node: Top' $GINFO_OUTPUT
2727 RETVAL=$?
0 #!/bin/sh
1 # Copyright (C) 2017 Free Software Foundation, Inc.
2 #
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 3, or (at your option)
6 # any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program. If not, see <http://www.gnu.org/licenses/>.
15
16 srcdir=${srcdir:-.}
17 . $srcdir/t/Init-test.inc
18 . $t/Init-inter.inc
19
20 # Load a split file with a malformed or missing tag table.
21
22 run_ginfo --file malformed-split --node Two
23 printf q >$PTY_TYPE
24
25 timeout_test
26
27 cleanup
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f intera
2121 # M-x menu-sequence
2222 printf '\033xmenu-sequence\rfile-menu,first,no,nod\rDq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 if test ! -f $GINFO_OUTPUT; then
2626 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f quoting
2121 # Go to a node with colons and commas in its name with "n"
2222 printf 'n\t\rDq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 if test ! -f $GINFO_OUTPUT; then
2626 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f sample
2121 # Try to search in the indices when there aren't any
2222 printf 'ia\rq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 cleanup
2626
00 #!/bin/sh
1 # Copyright (C) 2014, 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121
2222 # Follow a cross-reference with both the label and destination quoted.
2323 printf '\t\t\t\r\t\rDq' >$PTY_TYPE &
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f quoting
2121 # Follow a cross-reference to a node with colons and commas in its name
2222 printf '\t\r\t\rDq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 if test ! -f $GINFO_OUTPUT; then
2626 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f quoting
2121 # Follow a cross-reference with a manual and quoted nodename in the label.
2222 printf '\t\t\t\t\t\r\t\rDq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 if test ! -f $GINFO_OUTPUT; then
2626 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Follow a cross-reference with a manual and quoted nodename in the target,
2222 # after the colon.
2323 printf '\t\t\t\t\r\t\rDq' >$PTY_TYPE
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f quoting
2121 # Follow a cross-reference to a node with colons and commas in its name
2222 printf '\t\t\r\t\r\Dq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 if test ! -f $GINFO_OUTPUT; then
2626 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2424 printf '\0302\t\t\t\r' >$PTY_TYPE
2525 printf '\030o\0301\t\t\t\rq' >$PTY_TYPE
2626
27 . $t/Timeout-test.inc
27 timeout_test
2828 cleanup
2929
00 #!/bin/sh
1 # Copyright (C) 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
4444 printf q >$PTY_TYPE
4545
4646 rm -f t/replace-viewed.info
47 . $t/Timeout-test.inc
47 timeout_test
4848
4949 cleanup
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
3333 printf '\007q' >$PTY_TYPE
3434 fi
3535
36 . $t/Timeout-test.inc
36 timeout_test
3737 cleanup
3838
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Search for text in a node that appears after an Info tag
2222 printf '/match\r\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\rDq' >$PTY_TYPE
2323
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Search without specifying a search string, and check we don't crash.
2222 printf 's\rq' >$PTY_TYPE
2323
24 . $t/Timeout-test.inc
24 timeout_test
2525 cleanup
2626
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2222 # Go back to previous match when search-skip-screen=On
2323 printf 'smatch\r}{Dq' >$PTY_TYPE
2424
25 . $t/Timeout-test.inc
25 timeout_test
2626
2727 # Check we went back to the right node.
2828 grep '^File: search\.info, Node: Top' $GINFO_OUTPUT
00 #!/bin/sh
1 # Copyright (C) 2016 Free Software Foundation, Inc.
1 # Copyright (C) 2016, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
1919
2020 # Search for text in a split file after loading an index entry from the
2121 # command-line.
22 run_ginfo -f split 'Link to node'
22 run_ginfo "-f split 'Link to node'"
2323 printf '/node\r}}}}}q' >$PTY_TYPE
2424
25 . $t/Timeout-test.inc
25 timeout_test
2626
2727 cleanup
2828
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2323 # the one containing "Top". Check that we arrived properly and remembered
2424 # that we are in a split file by going back to "Top" with "t".
2525 printf tDq >$PTY_TYPE
26 . $t/Timeout-test.inc
26 timeout_test
2727
2828 if test ! -f $GINFO_OUTPUT; then
2929 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
1717 . $srcdir/t/Init-test.inc
1818 . $t/Init-inter.inc
1919
20 run_ginfo -f intera -n 'Node with footnotes' -v automatic-footnotes=On
20 run_ginfo "-f intera -n 'Node with footnotes' -v automatic-footnotes=On"
2121 # Move to automatic footnotes window and split it. Check we don't crash.
2222 printf '\030o\0302qqqq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 cleanup
2626
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121
2222 run_ginfo -f split
2323 printf 'ientry text\r\rDq' >$PTY_TYPE
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 if test ! -f $GINFO_OUTPUT; then
2727 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
1717 . $srcdir/t/Init-test.inc
1818 . $t/Init-inter.inc
1919
20 run_ginfo -f intera -n 'Star note non-whitespace'
20 run_ginfo "-f intera -n 'Star note non-whitespace'"
2121
2222 # Check that "*note" is not interpreted as a cross-reference marker if
2323 # it is followed by a non-whitespace character.
2424 printf '\t\rDq' >$PTY_TYPE
2525
26 . $t/Timeout-test.inc
26 timeout_test
2727
2828 # Return non-zero (test failure) if files differ
2929 diff $GINFO_OUTPUT $t/node-target
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
1717 . $srcdir/t/Init-test.inc
1818 . $t/Init-inter.inc
1919
20 run_ginfo -f intera -n 'Argument to tab'
20 run_ginfo "-f intera -n 'Argument to tab'"
2121 # C-u 2 TAB to go to second link
2222 printf '\0252\t\rDq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 diff $GINFO_OUTPUT $t/node-target
2626 RETVAL=$?
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 # Check that pressing tab in a file with no cross-references or menus
2222 # doesn't cause an infinite loop
2323 printf '\tq' >$PTY_TYPE
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 cleanup
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2323 # back to the last node that was actually displayed, and not to the
2424 # skipped node.
2525 printf '\t\t\tlDq' >$PTY_TYPE
26 . $t/Timeout-test.inc
26 timeout_test
2727
2828 grep 'Node: Top' $GINFO_OUTPUT
2929 RETVAL=$?
00 #!/bin/sh
1 # Copyright (C) 2014, 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2020 run_ginfo -f intera
2121 # Tab to first link and follow it
2222 printf '\t\rDq' >$PTY_TYPE
23 . $t/Timeout-test.inc
23 timeout_test
2424
2525 if test ! -f $GINFO_OUTPUT; then
2626 RETVAL=1
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
00 #!/bin/sh
1 # Copyright (C) 2014 Free Software Foundation, Inc.
1 # Copyright (C) 2014, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2121 run_ginfo
2222 # Split it in two, go to the new window, and make it the only window.
2323 printf '\0302\030o\0301Dq' >$PTY_TYPE
24 . $t/Timeout-test.inc
24 timeout_test
2525
2626 grep '^File: dir' $GINFO_OUTPUT
2727 RETVAL=$?
0 #!/bin/sh
1 # Copyright (C) 2017 Free Software Foundation, Inc.
2 #
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 3, or (at your option)
6 # any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program. If not, see <http://www.gnu.org/licenses/>.
15
16 srcdir=${srcdir:-.}
17 . $srcdir/t/Init-test.inc
18 . $t/Init-inter.inc
19
20 run_ginfo '-f intera -n "Xref target crosses lines 2"'
21 printf '\t\rDq' >$PTY_TYPE
22 timeout_test
23
24 grep 'Node: target node two' $GINFO_OUTPUT
25 RETVAL=$?
26
27 cleanup
00 #!/bin/sh
1 # Copyright (C) 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
1717 . $srcdir/t/Init-test.inc
1818 . $t/Init-inter.inc
1919
20 run_ginfo -f intera -n 'Xref target crosses lines'
20 run_ginfo "-f intera -n 'Xref target crosses lines'"
2121 printf '\t\rDq' >$PTY_TYPE
22 . $t/Timeout-test.inc
22 timeout_test
2323
2424 diff $GINFO_OUTPUT $t/node-target
2525 RETVAL=$?
00 #!/bin/sh
1 # Copyright (C) 2015 Free Software Foundation, Inc.
1 # Copyright (C) 2015, 2017 Free Software Foundation, Inc.
22 #
33 # This program is free software; you can redistribute it and/or modify
44 # it under the terms of the GNU General Public License as published by
2424