Skip to content

Commit

Permalink
* posix/wordexp.c: Remove numerous NULL pointer tests before FREE
Browse files Browse the repository at this point in the history
	calls.
  • Loading branch information
Ulrich Drepper committed May 10, 2006
1 parent 400cc70 commit ecf359c
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 21 deletions.
3 changes: 3 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
2006-05-09 Ulrich Drepper <drepper@redhat.com>

* posix/wordexp.c: Remove numerous NULL pointer tests before FREE
calls.

* io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
[Coverity CID 229, 230]

Expand Down
34 changes: 14 additions & 20 deletions posix/wordexp.c
Original file line number Diff line number Diff line change
Expand Up @@ -1167,9 +1167,8 @@ parse_comm (char **word, size_t *word_length, size_t *max_length,
return WRDE_NOSPACE;
}

/* Premature end */
if (comm)
free (comm);
/* Premature end. */
free (comm);

return WRDE_SYNTAX;
}
Expand Down Expand Up @@ -1430,8 +1429,7 @@ parse_param (char **word, size_t *word_length, size_t *max_length,
&buffer[20], 10, 0);
*word = w_addstr (*word, word_length, max_length, value);
free (env);
if (pattern)
free (pattern);
free (pattern);
return *word ? 0 : WRDE_NOSPACE;
}
/* Is it `$*' or `$@' (unquoted) ? */
Expand Down Expand Up @@ -1604,8 +1602,7 @@ parse_param (char **word, size_t *word_length, size_t *max_length,
if (free_value)
free (value);

if (expanded)
free (expanded);
free (expanded);

goto do_error;
}
Expand All @@ -1625,8 +1622,7 @@ parse_param (char **word, size_t *word_length, size_t *max_length,
if (free_value)
free (value);

if (expanded)
free (expanded);
free (expanded);

goto do_error;
}
Expand All @@ -1648,8 +1644,7 @@ parse_param (char **word, size_t *word_length, size_t *max_length,
goto no_space;
}

if (pattern)
free (pattern);
free (pattern);

pattern = expanded;
}
Expand Down Expand Up @@ -1863,7 +1858,7 @@ parse_param (char **word, size_t *word_length, size_t *max_length,
goto success;
}

if (free_value && value)
if (free_value)
free (value);

value = pattern ? __strdup (pattern) : pattern;
Expand All @@ -1880,8 +1875,10 @@ parse_param (char **word, size_t *word_length, size_t *max_length,
}
}

free (env); env = NULL;
free (pattern); pattern = NULL;
free (env);
env = NULL;
free (pattern);
pattern = NULL;

if (seen_hash)
{
Expand Down Expand Up @@ -1996,11 +1993,9 @@ parse_param (char **word, size_t *word_length, size_t *max_length,
error = WRDE_SYNTAX;

do_error:
if (env)
free (env);
free (env);

if (pattern)
free (pattern);
free (pattern);

return error;
}
Expand Down Expand Up @@ -2448,8 +2443,7 @@ wordexp (const char *words, wordexp_t *pwordexp, int flags)
* set pwordexp members back to what they were.
*/

if (word != NULL)
free (word);
free (word);

if (error == WRDE_NOSPACE)
return WRDE_NOSPACE;
Expand Down
1 change: 0 additions & 1 deletion sysdeps/posix/getaddrinfo.c
Original file line number Diff line number Diff line change
Expand Up @@ -1042,7 +1042,6 @@ gaih_inet (const char *name, const struct gaih_service *service,
else
socklen = sizeof (struct sockaddr_in);

struct addrinfo *pai_1st = pai;
for (st2 = st; st2 != NULL; st2 = st2->next)
{
struct addrinfo *ai;
Expand Down

0 comments on commit ecf359c

Please sign in to comment.