mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-15 22:38:08 +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;
|
||||
va_list ap2;
|
||||
char s;
|
||||
|
||||
*strp = NULL;
|
||||
va_copy(ap2, ap);
|
||||
size = vsnprintf(*strp, 0, fmt, ap2);
|
||||
size = vsnprintf(&s, 1, fmt, ap2);
|
||||
va_end(ap2);
|
||||
*strp = malloc(size + 1);
|
||||
if (!*strp)
|
||||
return -1;
|
||||
va_start(fmt, ap);
|
||||
vsnprintf(*strp, size + 1, fmt, ap);
|
||||
va_end(ap);
|
||||
free(*strp);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user