-static char *qasprintf(const char *format, va_list ap)
-{
- va_list aq;
- va_copy(aq, ap);
-
- int size = 0;
- char *p = NULL;
-
- size = vsnprintf(p, size, format, ap);
-
- if (size < 0) {
- va_end(aq);
- return NULL;
- }
-
- size++;
- p = XMALLOC(MTYPE_TMP, size);
-
- size = vsnprintf(p, size, format, aq);
- va_end(aq);
-
- if (size < 0) {
- XFREE(MTYPE_TMP, p);
- return NULL;
- }
-
- return p;
-}
-