You've already forked libimobiledevice
mirror of
https://github.com/encounter/libimobiledevice.git
synced 2026-03-30 11:18:43 -07:00
35 lines
611 B
C
35 lines
611 B
C
#ifndef __ASPRINTF_H
|
|
#define __ASPRINTF_H
|
|
|
|
#ifdef HAVE_CONFIG_H
|
|
#include <config.h>
|
|
#endif
|
|
|
|
#ifndef HAVE_VASPRINTF
|
|
static inline int vasprintf(char **PTR, const char *TEMPLATE, va_list AP)
|
|
{
|
|
int res;
|
|
char buf[16];
|
|
res = vsnprintf(buf, 16, TEMPLATE, AP);
|
|
if (res > 0) {
|
|
*PTR = (char*)malloc(res+1);
|
|
res = vsnprintf(*PTR, res+1, TEMPLATE, AP);
|
|
}
|
|
return res;
|
|
}
|
|
#endif
|
|
|
|
#ifndef HAVE_ASPRINTF
|
|
static inline int asprintf(char **PTR, const char *TEMPLATE, ...)
|
|
{
|
|
int res;
|
|
va_list AP;
|
|
va_start(AP, TEMPLATE);
|
|
res = vasprintf(PTR, TEMPLATE, AP);
|
|
va_end(AP);
|
|
return res;
|
|
}
|
|
#endif
|
|
|
|
#endif /* ASPRINTF_H */
|