Update to current bash version

This commit is contained in:
Andrey A. Chernov 1997-11-06 00:50:44 +00:00
parent 933f368172
commit 7c3c5c1539
6 changed files with 14 additions and 7 deletions

View File

@ -796,7 +796,9 @@ make_quoted_replacement (match, mtype, qc)
/* If there is a single match, see if we need to quote it.
This also checks whether the common prefix of several
matches needs to be quoted. */
should_quote = rl_strpbrk (match, rl_filename_quote_characters) != 0;
should_quote = rl_filename_quote_characters
? (rl_strpbrk (match, rl_filename_quote_characters) != 0)
: 0;
do_replace = should_quote ? mtype : NO_MATCH;
/* Quote the replacement, since we found an embedded

View File

@ -1482,7 +1482,7 @@ cr ()
void
_rl_redisplay_after_sigwinch ()
{
char *t, *oldp;
char *t, *oldp, *oldl, *oldlprefix;
/* Clear the current line and put the cursor at column 0. Make sure
the right thing happens if we have wrapped to a new screen line. */
@ -1508,9 +1508,14 @@ _rl_redisplay_after_sigwinch ()
if (t)
{
oldp = rl_display_prompt;
oldl = local_prompt;
oldlprefix = local_prompt_prefix;
rl_display_prompt = ++t;
local_prompt = local_prompt_prefix = (char *)NULL;
rl_forced_update_display ();
rl_display_prompt = oldp;
local_prompt = oldl;
local_prompt_prefix = oldlprefix;
}
else
rl_forced_update_display ();

View File

@ -246,7 +246,7 @@ history_truncate_file (fname, lines)
/* Write only if there are more lines in the file than we want to
truncate to. */
if (i && ((file = open (filename, O_WRONLY|O_TRUNC|O_BINARY, 0666)) != -1))
if (i && ((file = open (filename, O_WRONLY|O_TRUNC|O_BINARY, 0600)) != -1))
{
write (file, buffer + i, finfo.st_size - i);
close (file);
@ -275,7 +275,7 @@ history_do_write (filename, nelements, overwrite)
mode = overwrite ? O_WRONLY|O_CREAT|O_TRUNC|O_BINARY : O_WRONLY|O_APPEND|O_BINARY;
output = history_filename (filename);
if ((file = open (output, mode, 0666)) == -1)
if ((file = open (output, mode, 0600)) == -1)
{
FREE (output);
return (errno);

View File

@ -262,7 +262,7 @@ rl_search_history (direction, invoking_key)
break;
}
if (c >= 0 && (CTRL_CHAR (c) || META_CHAR (c) || c == RUBOUT))
if (c >= 0 && (CTRL_CHAR (c) || META_CHAR (c) || c == RUBOUT) && c != CTRL ('g'))
{
rl_execute_next (c);
break;

View File

@ -255,7 +255,7 @@ extern int rl_pending_input;
/* Non-zero if we called this function from _rl_dispatch(). It's present
so functions can find out whether they were called from a key binding
or directly from an application. */
int rl_dispatching;
extern int rl_dispatching;
/* The name of the terminal to use. */
extern char *rl_terminal_name;

View File

@ -189,7 +189,7 @@ tilde_expand (string)
if (result = strchr (string, '~'))
result = xmalloc (result_size = (strlen (string) + 16));
else
result = xmalloc (result_size = strlen (string));
result = xmalloc (result_size = (strlen (string) + 1));
/* Scan through STRING expanding tildes as we come to them. */
while (1)