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:
parent
e734769276
commit
6aed4288eb
@ -39,7 +39,7 @@ asprintf(char **str, const char *fmt, ...)
|
|||||||
f._bf._size = f._w = 127; /* Leave room for the NUL */
|
f._bf._size = f._w = 127; /* Leave room for the NUL */
|
||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
ret = vfprintf(&f, fmt, ap);
|
ret = vfprintf(&f, fmt, ap);
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
if (ret == -1)
|
if (ret == -1)
|
||||||
goto err;
|
goto err;
|
||||||
*f._p = '\0';
|
*f._p = '\0';
|
||||||
@ -50,10 +50,7 @@ asprintf(char **str, const char *fmt, ...)
|
|||||||
return (ret);
|
return (ret);
|
||||||
|
|
||||||
err:
|
err:
|
||||||
if (f._bf._base) {
|
free(f._bf._base);
|
||||||
free(f._bf._base);
|
|
||||||
f._bf._base = NULL;
|
|
||||||
}
|
|
||||||
*str = NULL;
|
*str = NULL;
|
||||||
errno = ENOMEM;
|
errno = ENOMEM;
|
||||||
return (-1);
|
return (-1);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user