update copyright dates; fix problem with ignoring completions

This commit is contained in:
Chet Ramey
2024-07-16 09:38:09 -04:00
parent d3e86e66ce
commit 5d53be184e
36 changed files with 3751 additions and 3717 deletions
+8
View File
@@ -9802,3 +9802,11 @@ parse.y
we only want to parse a single command and make sure it consumes
the entire string, not consume the string and return the last command
parsed
7/9
---
bashline.c
- _ignore_completion_names: restrict force_fignore to act only on
completions that should be affected by FIGNORE; in other cases
act as if it were set to 1
From a report and patch by Koichi Murase <myoga.murase@gmail.com>
+9 -6
View File
@@ -3071,7 +3071,10 @@ _ignore_completion_names (char **names, sh_ignore_func_t *name_func)
char **newnames;
size_t idx, nidx;
char **oldnames;
int oidx;
int oidx, allow_empty;
/* allow_empty is used to make force_fignore apply only to FIGNORE completions. */
allow_empty = (name_func == name_is_acceptable) ? force_fignore : 1;
/* If there is only one completion, see if it is acceptable. If it is
not, free it up. In any case, short-circuit and return. This is a
@@ -3079,7 +3082,7 @@ _ignore_completion_names (char **names, sh_ignore_func_t *name_func)
if there is only one completion; it is the completion itself. */
if (names[1] == (char *)0)
{
if (force_fignore)
if (allow_empty)
if ((*name_func) (names[0]) == 0)
{
free (names[0]);
@@ -3095,7 +3098,7 @@ _ignore_completion_names (char **names, sh_ignore_func_t *name_func)
;
newnames = strvec_create (nidx + 1);
if (force_fignore == 0)
if (allow_empty == 0)
{
oldnames = strvec_create (nidx - 1);
oidx = 0;
@@ -3106,7 +3109,7 @@ _ignore_completion_names (char **names, sh_ignore_func_t *name_func)
{
if ((*name_func) (names[idx]))
newnames[nidx++] = names[idx];
else if (force_fignore == 0)
else if (allow_empty == 0)
oldnames[oidx++] = names[idx];
else
free (names[idx]);
@@ -3117,7 +3120,7 @@ _ignore_completion_names (char **names, sh_ignore_func_t *name_func)
/* If none are acceptable then let the completer handle it. */
if (nidx == 1)
{
if (force_fignore)
if (allow_empty)
{
free (names[0]);
names[0] = (char *)NULL;
@@ -3129,7 +3132,7 @@ _ignore_completion_names (char **names, sh_ignore_func_t *name_func)
return;
}
if (force_fignore == 0)
if (allow_empty == 0)
{
while (oidx)
free (oldnames[--oidx]);
+1 -1
View File
@@ -1,6 +1,6 @@
/* common.c - utility functions for all builtins */
/* Copyright (C) 1987-2023 Free Software Foundation, Inc.
/* Copyright (C) 1987-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,7 +1,7 @@
This file is declare.def, from which is created declare.c.
It implements the builtins "declare" and "local" in Bash.
Copyright (C) 1987-2023 Free Software Foundation, Inc.
Copyright (C) 1987-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,7 +1,7 @@
This file is enable.def, from which is created enable.c.
It implements the builtin "enable" in Bash.
Copyright (C) 1987-2023 Free Software Foundation, Inc.
Copyright (C) 1987-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+4 -2
View File
@@ -1,6 +1,6 @@
/* evalstring.c - evaluate a string as one or more shell commands. */
/* Copyright (C) 1996-2023 Free Software Foundation, Inc.
/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
@@ -548,6 +548,8 @@ parse_and_execute (char *string, const char *from_file, int flags)
if ((subshell_environment & SUBSHELL_COMSUB) || executing_funsub)
expand_aliases = expaliases_flag;
/* This functionality is now implemented as part of
subst.c:command_substitute(). */
#if 0
/* See if this is a candidate for $( <file ). */
if (startup_state == 2 &&
@@ -555,8 +557,8 @@ parse_and_execute (char *string, const char *from_file, int flags)
*bash_input.location.string == '\0' &&
can_optimize_cat_file (command))
{
itrace("parse_and_execute: calling cat_file, parse_and_execute_level = %d", parse_and_execute_level);
int r;
INTERNAL_DEBUG(("parse_and_execute: calling cat_file, parse_and_execute_level = %d", parse_and_execute_level));
r = cat_file (command->value.Simple->redirects);
last_result = (r < 0) ? EXECUTION_FAILURE : EXECUTION_SUCCESS;
}
+1 -1
View File
@@ -1,7 +1,7 @@
This file is getopts.def, from which is created getopts.c.
It implements the builtin "getopts" in Bash.
Copyright (C) 1987-2023 Free Software Foundation, Inc.
Copyright (C) 1987-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,7 +1,7 @@
This file is read.def, from which is created read.c.
It implements the builtin "read" in Bash.
Copyright (C) 1987-2023 Free Software Foundation, Inc.
Copyright (C) 1987-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+3
View File
@@ -68,6 +68,9 @@ Values are in 1024-byte increments, except for -t, which is in seconds;
-b, which is in bytes; and -e, -i, -k, -n, -q, -r, -u, -x, and -P,
which accept unscaled values.
When in posix mode, values supplied with -c and -f are in 512-byte
increments.
Exit Status:
Returns success unless an invalid option is supplied or an error occurs.
$END
BIN
View File
Binary file not shown.
+27 -52
View File
@@ -1,12 +1,12 @@
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=pdfetex 2024.4.9) 3 JUL 2024 10:54
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=etex 2024.4.9) 9 JUL 2024 10:37
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
%&-line parsing enabled.
**\input /usr/local/src/bash/bash-20240701/doc/bashref.texi \input /usr/local/s
rc/bash/bash-20240701/doc/bashref.texi
(/usr/local/src/bash/bash-20240701/doc/bashref.texi
(/usr/local/src/bash/bash-20240701/doc/texinfo.tex
**\nonstopmode \input /usr/local/src/bash/bash-20240709/doc/bashref.texi \input
/usr/local/src/bash/bash-20240709/doc/bashref.texi
(/usr/local/src/bash/bash-20240709/doc/bashref.texi
(/usr/local/src/bash/bash-20240709/doc/texinfo.tex
Loading texinfo [version 2015-11-22.14]:
\outerhsize=\dimen16
\outervsize=\dimen17
@@ -162,23 +162,20 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
texinfo.tex: doing @include of version.texi
(/usr/local/src/bash/bash-20240701/doc/version.texi) [1{/opt/local/var/db/texmf
/fonts/map/pdftex/updmap/pdftex.map}] [2]
(/usr/local/build/bash/bash-20240701/doc/bashref.toc [-1] [-2] [-3]) [-4]
(/usr/local/build/bash/bash-20240701/doc/bashref.toc)
(/usr/local/build/bash/bash-20240701/doc/bashref.toc) Chapter 1
(/usr/local/src/bash/bash-20240709/doc/version.texi) [1] [2]
(/usr/local/build/bash/bash-20240709/doc/bashref.toc [-1] [-2] [-3]) [-4]
Chapter 1
\openout0 = `bashref.toc'.
(/usr/local/build/bash/bash-20240701/doc/bashref.aux)
(/usr/local/build/bash/bash-20240709/doc/bashref.aux)
\openout1 = `bashref.aux'.
Chapter 2 [1] [2]
Chapter 2
[1] [2]
@cpindfile=@write2
\openout2 = `bashref.cp'.
[3] Chapter 3 [4] [5] [6] [7]
[3] Chapter 3 [4] [5] [6] [7]
@vrindfile=@write3
\openout3 = `bashref.vr'.
@@ -221,16 +218,15 @@ Overfull \hbox (5.95723pt too wide) in paragraph at lines 724--725
@rwindfile=@write4
\openout4 = `bashref.rw'.
[9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19{/opt/local/share/texmf-tex
live/fonts/enc/dvips/cm-super/cm-super-t1.enc}] [20] [21] [22] [23] [24]
[25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39]
[40] [41] [42] [43] [44] [45] [46] [47] Chapter 4 [48]
[9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23]
[24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38]
[39] [40] [41] [42] [43] [44] [45] [46] [47] Chapter 4 [48]
@btindfile=@write5
\openout5 = `bashref.bt'.
[49] [50] [51] [52]
[53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67]
[68]
[49] [50] [51]
[52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66]
[67] [68]
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5446--5446
[]@texttt set [-abefhkmnptuvxBCEHPT] [-o @textttsl option-name@texttt ] [--] [
-] [@textttsl ar-gu-ment []@texttt ][]
@@ -263,7 +259,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5447--5447
[119] [120]
texinfo.tex: doing @include of rluser.texi
(/usr/local/src/bash/bash-20240701/lib/readline/doc/rluser.texi
(/usr/local/src/bash/bash-20240709/lib/readline/doc/rluser.texi
Chapter 8 [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131]
[132]
Underfull \hbox (badness 7540) in paragraph at lines 882--888
@@ -313,7 +309,7 @@ gnored[]
texinfo.tex: doing @include of hsuser.texi
(/usr/local/src/bash/bash-20240701/lib/readline/doc/hsuser.texi Chapter 9
(/usr/local/src/bash/bash-20240709/lib/readline/doc/hsuser.texi Chapter 9
[158] [159] [160] [161] [162] [163]) Chapter 10 [164] [165] [166] [167]
[168]
Underfull \hbox (badness 10000) in paragraph at lines 9842--9851
@@ -345,37 +341,16 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and
[178] [179] Appendix C [180]
texinfo.tex: doing @include of fdl.texi
(/usr/local/src/bash/bash-20240701/doc/fdl.texi
(/usr/local/src/bash/bash-20240709/doc/fdl.texi
[181] [182] [183] [184] [185] [186] [187]) Appendix D [188] [189] [190]
[191] [192] [193] [194] [195] [196] [197] )
Here is how much of TeX's memory you used:
4105 strings out of 495840
47629 string characters out of 6171739
143267 words of memory out of 5000000
5048 multiletter control sequences out of 15000+600000
3531 strings out of 495850
40273 string characters out of 6172145
89061 words of memory out of 5000000
4879 multiletter control sequences out of 15000+600000
34315 words of font info for 116 fonts, out of 8000000 for 9000
701 hyphenation exceptions out of 8191
16i,6n,16p,389b,983s stack positions out of 10000i,1000n,20000p,200000b,200000s
</opt/local/share/texmf-texlive/font
s/type1/public/amsfonts/cm/cmbx12.pfb></opt/local/share/texmf-texlive/fonts/typ
e1/public/amsfonts/cm/cmcsc10.pfb></opt/local/share/texmf-texlive/fonts/type1/p
ublic/amsfonts/cm/cmmi10.pfb></opt/local/share/texmf-texlive/fonts/type1/public
/amsfonts/cm/cmmi12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsf
onts/cm/cmmi9.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/c
m/cmr10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr9
.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsl10.pfb>
</opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsltt10.pfb></o
pt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsy10.pfb></opt/lo
cal/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/s
hare/texmf-texlive/fonts/type1/public/amsfonts/cm/cmtt10.pfb></opt/local/share/
texmf-texlive/fonts/type1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf
-texlive/fonts/type1/public/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texli
ve/fonts/type1/public/cm-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fon
ts/type1/public/cm-super/sfrm1440.pfb>
Output written on bashref.pdf (203 pages, 820627 bytes).
PDF statistics:
2836 PDF objects out of 2984 (max. 8388607)
2586 compressed objects within 26 object streams
331 named destinations out of 1000 (max. 500000)
1157 words of extra memory for PDF output out of 10000 (max. 10000000)
16i,6n,16p,402b,942s stack positions out of 10000i,1000n,20000p,200000b,200000s
Output written on bashref.dvi (203 pages, 855852 bytes).
+3147 -3120
View File
File diff suppressed because it is too large Load Diff
+510 -513
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
/* expr.c -- arithmetic expression evaluation. */
/* Copyright (C) 1990-2023 Free Software Foundation, Inc.
/* Copyright (C) 1990-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -834,7 +834,7 @@ absolute_program (const char *string)
return ((char *)mbschr (string, '/') != (char *)NULL);
#else
return ((char *)mbschr (string, '/') != (char *)NULL ||
(char *)mbschr (string, '\\') != (char *)NULL)
(char *)mbschr (string, '\\') != (char *)NULL);
#endif
}
+1 -1
View File
@@ -1,4 +1,4 @@
/* Copyright (C) 2023 Free Software Foundation, Inc.
/* Copyright (C) 2023-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* display.c -- readline redisplay facility. */
/* Copyright (C) 1987-2023 Free Software Foundation, Inc.
/* Copyright (C) 1987-2024 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
+1 -1
View File
@@ -1,6 +1,6 @@
/* histfile.c - functions to manipulate the history file. */
/* Copyright (C) 1989-2019,2023 Free Software Foundation, Inc.
/* Copyright (C) 1989-2019,2023-2024 Free Software Foundation, Inc.
This file contains the GNU History Library (History), a set of
routines for managing the text of previously typed lines.
+9
View File
@@ -548,6 +548,15 @@ reset_alarm ()
setitimer (ITIMER_REAL, &it, NULL);
}
# else
# if defined (__MINGW32_MAJOR_VERSION)
/* mingw.org's MinGW doesn't have alarm(3). */
unsigned int
alarm (unsigned int seconds)
{
return 0;
}
# endif
static int
set_alarm (unsigned int *secs, unsigned int *usecs)
{
+1 -1
View File
@@ -1,6 +1,6 @@
/* kill.c -- kill ring management. */
/* Copyright (C) 1994-2023 Free Software Foundation, Inc.
/* Copyright (C) 1994-2024 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
+1 -1
View File
@@ -1,6 +1,6 @@
/* mbutil.c -- readline multibyte character utility functions */
/* Copyright (C) 2001-2021,2023 Free Software Foundation, Inc.
/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
+1 -1
View File
@@ -1,6 +1,6 @@
/* rlmbutil.h -- utility functions for multibyte characters. */
/* Copyright (C) 2001-2021,2023 Free Software Foundation, Inc.
/* Copyright (C) 2001-2024 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
+1
View File
@@ -332,6 +332,7 @@ extern int _rl_timeout_handle_sigalrm (void);
/* use as a sentinel for fd_set, struct timeval, and sigset_t definitions */
#if defined (__MINGW32__)
/* still doesn't work; no alarm() so we provide a non-working stub. */
# define RL_TIMEOUT_USE_SIGALRM
#elif defined (HAVE_SELECT) || defined (HAVE_PSELECT)
# define RL_TIMEOUT_USE_SELECT
+1 -1
View File
@@ -1,6 +1,6 @@
/* anonfile.c - open and close temporary files (anonymous and memory-backed if possible). */
/* Copyright (C) 2023 Free Software Foundation, Inc.
/* Copyright (C) 2023-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,7 +1,7 @@
/* getenv.c - get environment variable value from the shell's variable
list. */
/* Copyright (C) 1997-2002,2023 Free Software Foundation, Inc.
/* Copyright (C) 1997-2002,2023-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* pathphys.c -- return pathname with all symlinks expanded. */
/* Copyright (C) 2000-2020,2022-2023 Free Software Foundation, Inc.
/* Copyright (C) 2000-2020,2022-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* spell.c -- spelling correction for pathnames. */
/* Copyright (C) 2000-2023 Free Software Foundation, Inc.
/* Copyright (C) 2000-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* stringvec.c - functions for managing arrays of strings. */
/* Copyright (C) 2000-2002,2022-2023 Free Software Foundation, Inc.
/* Copyright (C) 2000-2002,2022-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* strlcpy - null-terminated string copy with length checking. */
/* Copyright (C) 2023 Free Software Foundation, Inc.
/* Copyright (C) 2023-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* tilde.c -- Tilde expansion code (~/foo := $HOME/foo). */
/* Copyright (C) 1988-2020,2023 Free Software Foundation, Inc.
/* Copyright (C) 1988-2020,2023-2024 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
+1 -1
View File
@@ -1,6 +1,6 @@
/* pathexp.c -- The shell interface to the globbing library. */
/* Copyright (C) 1995-2023 Free Software Foundation, Inc.
/* Copyright (C) 1995-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* pcomplete.c - functions to generate lists of matches for programmable completion. */
/* Copyright (C) 1999-2023 Free Software Foundation, Inc.
/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1
View File
@@ -105,6 +105,7 @@ fn
after 1
fn
after 2
declare -- baz=$'bar\nfoo'
before
after
CHLD
+8
View File
@@ -27,6 +27,14 @@ echo after 2
unset -f fn
# make sure the RETURN trap is run in a command substitution
foo() { trap 'echo foo' RETURN; /bin/echo bar; }
baz=$( foo )
declare -p baz
unset -v baz
unset -f foo
# since this sets the exit trap, it has to go last
set +o functrace
+1 -1
View File
@@ -1,7 +1,7 @@
/* trap.c -- Not the trap command, but useful functions for manipulating
those objects. The trap command is in builtins/trap.def. */
/* Copyright (C) 1987-2023 Free Software Foundation, Inc.
/* Copyright (C) 1987-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
+1 -1
View File
@@ -1,6 +1,6 @@
/* xmalloc.c -- safe versions of malloc and realloc */
/* Copyright (C) 1991-2016,2023 Free Software Foundation, Inc.
/* Copyright (C) 1991-2016,2023-2024 Free Software Foundation, Inc.
This file is part of GNU Bash, the GNU Bourne Again SHell.