(2006-08-06) rescue-bootcd
This commit is contained in:
30
extra/syslinux-3.09/com32/lib/asprintf.c
Normal file
30
extra/syslinux-3.09/com32/lib/asprintf.c
Normal file
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* asprintf.c
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
|
||||
int asprintf(char **bufp, const char *format, ...)
|
||||
{
|
||||
va_list ap, ap1;
|
||||
int rv;
|
||||
int bytes;
|
||||
char *p;
|
||||
|
||||
va_start(ap, format);
|
||||
va_copy(ap1, ap);
|
||||
|
||||
bytes = vsnprintf(NULL, 0, format, ap1) + 1;
|
||||
va_end(ap1);
|
||||
|
||||
*bufp = p = malloc(bytes);
|
||||
if ( !p )
|
||||
return -1;
|
||||
|
||||
rv = vsnprintf(p, bytes, format, ap);
|
||||
va_end(ap);
|
||||
|
||||
return rv;
|
||||
}
|
||||
Reference in New Issue
Block a user