mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-16 23:08:32 +00:00
Fix vasnprintf emulation (bug #4882)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6258 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
6
utils.c
6
utils.c
@@ -617,17 +617,17 @@ int vasprintf(char **strp, const char *fmt, va_list ap)
|
|||||||
{
|
{
|
||||||
int size;
|
int size;
|
||||||
va_list ap2;
|
va_list ap2;
|
||||||
|
char s;
|
||||||
|
|
||||||
*strp = NULL;
|
*strp = NULL;
|
||||||
va_copy(ap2, ap);
|
va_copy(ap2, ap);
|
||||||
size = vsnprintf(*strp, 0, fmt, ap2);
|
size = vsnprintf(&s, 1, fmt, ap2);
|
||||||
va_end(ap2);
|
va_end(ap2);
|
||||||
*strp = malloc(size + 1);
|
*strp = malloc(size + 1);
|
||||||
if (!*strp)
|
if (!*strp)
|
||||||
return -1;
|
return -1;
|
||||||
va_start(fmt, ap);
|
|
||||||
vsnprintf(*strp, size + 1, fmt, ap);
|
vsnprintf(*strp, size + 1, fmt, ap);
|
||||||
va_end(ap);
|
free(*strp);
|
||||||
|
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user