commit bash-20170929 snapshot

This commit is contained in:
Chet Ramey
2017-10-02 16:42:47 -04:00
parent 1ebae4666c
commit 45cccbbc0e
8 changed files with 36 additions and 6 deletions
+19
View File
@@ -14309,3 +14309,22 @@ builtins/printf.def
valid multibyte character; use mbtowc right away and then inspect
the return value. Fixes bug reported by Stephane Chazelas
<stephane.chazelas@gmail.com>
9/27
----
{jobs,subst}.h
- move declaration of last_command_subst_pid to subst.h, since it's
declared in subst.c and doesn't depend on job control. Reported by
Martijn Dekker <martijn@inlv.org>
builtins/read.def,variables.c
- fixed a couple of problems (READLINE, ARRAY_VARS) that prevented
the minimal config from building
10/1
----
parse.y
- special_case_tokens: if we are returning DO in a case where the last
two tokens read are `FOR' and `WORD' make sure we decrement
expecting_in_token. Fixes bug reported by Martijn Dekker
<martijn@inlv.org>
+2
View File
@@ -686,6 +686,7 @@ add_char:
input_string[i] = '\0'; /* for simplicity and debugging */
/* If we got input from readline, grab the next multibyte char from
rlbuf. */
# if defined (READLINE)
if (edit)
{
size_t clen;
@@ -701,6 +702,7 @@ add_char:
}
}
else
# endif
i += read_mbchar (fd, input_string, i, c, unbuffered_read);
}
#endif
Vendored
+2 -2
View File
@@ -1,5 +1,5 @@
#! /bin/sh
# From configure.ac for Bash 4.4, version 4.088.
# From configure.ac for Bash 4.4, version 4.089.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for bash 4.4-maint.
#
@@ -10284,7 +10284,7 @@ else
int
main ()
{
int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}
long double r; char *foo, bar; r = strtold(foo, &bar);
;
return 0;
}
+2 -2
View File
@@ -21,7 +21,7 @@ dnl Process this file with autoconf to produce a configure script.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AC_REVISION([for Bash 4.4, version 4.088])dnl
AC_REVISION([for Bash 4.4, version 4.089])dnl
define(bashvers, 4.4)
define(relstatus, maint)
@@ -817,7 +817,7 @@ AC_CHECK_DECLS([strtold], [
AC_CACHE_VAL(bash_cv_strtold_broken,
[AC_TRY_COMPILE(
[#include <stdlib.h>],
[int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}],
[long double r; char *foo, bar; r = strtold(foo, &bar);],
bash_cv_strtold_broken=no, bash_cv_strtold_broken=yes,
[AC_MSG_WARN(cannot check for broken strtold if cross-compiling, defaulting to no)])
]
-1
View File
@@ -187,7 +187,6 @@ extern struct jobstats js;
extern pid_t original_pgrp, shell_pgrp, pipeline_pgrp;
extern volatile pid_t last_made_pid, last_asynchronous_pid;
extern pid_t last_command_subst_pid;
extern int asynchronous_notification;
extern int already_making_children;
+5 -1
View File
@@ -2996,7 +2996,11 @@ special_case_tokens (tokstr)
(token_before_that == FOR) &&
#endif
(tokstr[0] == 'd' && tokstr[1] == 'o' && tokstr[2] == '\0'))
return (DO);
{
if (expecting_in_token)
expecting_in_token--;
return (DO);
}
/* Ditto for ESAC in the CASE case.
Specifically, this handles "case word in esac", which is a legal
+2
View File
@@ -329,6 +329,8 @@ extern int assigning_in_environment;
extern int expanding_redir;
extern int inherit_errexit;
extern pid_t last_command_subst_pid;
/* Evaluates to 1 if C is a character in $IFS. */
#define isifs(c) (ifs_cmap[(unsigned char)(c)] != 0)
+4
View File
@@ -2534,11 +2534,15 @@ make_local_variable (name, flags)
{
/* This may not make sense for nameref variables that are shadowing
variables with the same name, but we don't know that yet. */
#if defined (ARRAY_VARS)
if (assoc_p (old_var))
var_setassoc (new_var, assoc_copy (assoc_cell (old_var)));
else if (array_p (old_var))
var_setarray (new_var, array_copy (array_cell (old_var)));
else if (value_cell (old_var))
#else
if (value_cell (old_var))
#endif
var_setvalue (new_var, savestring (value_cell (old_var)));
else
var_setvalue (new_var, (char *)NULL);