- Fix the NEWS file to be accurate

- Add oneshell to $(.FEATURES) (forgot that!)
- Fix Savannah bug #30612: handling of archive references with >1 object
This commit is contained in:
Paul Smith
2010-08-14 02:50:14 +00:00
parent 036760a9fd
commit 5acda13ace
8 changed files with 96 additions and 17 deletions

15
read.c
View File

@@ -3028,7 +3028,7 @@ parse_file_seq (char **stringp, unsigned int size, int stopchar,
{
/* This looks like the first element in an open archive group.
A valid group MUST have ')' as the last character. */
const char *e = p + nlen;
const char *e = p;
do
{
e = next_token (e);
@@ -3084,19 +3084,19 @@ parse_file_seq (char **stringp, unsigned int size, int stopchar,
Go to the next item in the string. */
if (flags & PARSEFS_NOGLOB)
{
NEWELT (concat (2, prefix, tp));
NEWELT (concat (2, prefix, tmpbuf));
continue;
}
/* If we get here we know we're doing glob expansion.
TP is a string in tmpbuf. NLEN is no longer used.
We may need to do more work: after this NAME will be set. */
name = tp;
name = tmpbuf;
/* Expand tilde if applicable. */
if (tp[0] == '~')
if (tmpbuf[0] == '~')
{
tildep = tilde_expand (tp);
tildep = tilde_expand (tmpbuf);
if (tildep != 0)
name = tildep;
}
@@ -3152,7 +3152,10 @@ parse_file_seq (char **stringp, unsigned int size, int stopchar,
else
{
/* We got a chain of items. Attach them. */
(*newp)->next = found;
if (*newp)
(*newp)->next = found;
else
*newp = found;
/* Find and set the new end. Massage names if necessary. */
while (1)