stdio: simplify asprintf()

... by removing unneeded NULL check, as free() already does it.
By the way, we don't need to set a stack variable back to NULL.

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>

Change-Id: Id1f72e872f73366dddcea4abc75885a3d9a318c6
This commit is contained in:
André Goddard Rosa 2010-01-30 22:39:00 -02:00 committed by Jean-Baptiste Queru
parent e734769276
commit 6aed4288eb
1 changed files with 2 additions and 5 deletions

View File

@ -39,7 +39,7 @@ asprintf(char **str, const char *fmt, ...)
f._bf._size = f._w = 127; /* Leave room for the NUL */
va_start(ap, fmt);
ret = vfprintf(&f, fmt, ap);
va_end(ap);
va_end(ap);
if (ret == -1)
goto err;
*f._p = '\0';
@ -50,10 +50,7 @@ asprintf(char **str, const char *fmt, ...)
return (ret);
err:
if (f._bf._base) {
free(f._bf._base);
f._bf._base = NULL;
}
free(f._bf._base);
*str = NULL;
errno = ENOMEM;
return (-1);