8658a54087e84411c67416bfb6854ec1ff8b3b44
[oweals/busybox.git] / libbb / bb_asprintf.c
1 /*
2    Copyright (C) 2002,2005 Vladimir Oleynik <dzo@simtreas.ru>
3 */
4
5 #include <stdlib.h>
6 #include <stdio.h>
7 #include <stdarg.h>
8 #include "libbb.h"
9
10 char *bb_xasprintf(const char *format, ...)
11 {
12         va_list p;
13         int r;
14         char *string_ptr;
15
16         va_start(p, format);
17         r = vasprintf(&string_ptr, format, p);
18         va_end(p);
19
20         if (r < 0) {
21                 bb_perror_msg_and_die("bb_xasprintf");
22         }
23         return string_ptr;
24 }