28 size_t new_buffer_size;
35 if (new_buffer_size == 0)
83 va_start (ap, format);
86 for (f = format; *f; f++)
92 const char *f_old = f;
97 str = va_arg (ap,
char *);
100 sprintf (str,
"%d", va_arg (ap,
int));
103 sprintf (str,
"%u", va_arg (ap,
unsigned int));
106 sprintf (str,
"%x", va_arg (ap,
unsigned int));
109 sprintf (str,
"%o", va_arg (ap,
unsigned int));
116 sprintf (str,
"%ld", va_arg (ap,
long));
119 sprintf (str,
"%lu", va_arg (ap,
unsigned long));
122 sprintf (str,
"%lx", va_arg (ap,
unsigned long));
125 sprintf (str,
"%lo", va_arg (ap,
unsigned long));
132 sprintf (str,
"%" PRId64,
133 (int64_t) va_arg (ap,
long long));
136 sprintf (str,
"%" PRIu64,
137 (uint64_t) va_arg (ap,
unsigned long long));
140 sprintf (str,
"%" PRIx64,
141 (uint64_t) va_arg (ap,
unsigned long long));
144 sprintf (str,
"%" PRIo64,
145 (uint64_t) va_arg (ap,
unsigned long long));
static void xfree(T *ptr)
void buffer_free(struct buffer *buffer)
void * memset(T *s, int c, size_t n)=delete
void buffer_xml_printf(struct buffer *buffer, const char *format,...)
#define buffer_grow_str(BUFFER, STRING)
std::string xml_escape_text(const char *text)
PTR xrealloc(PTR ptr, size_t size)
void buffer_init(struct buffer *buffer)
char * buffer_finish(struct buffer *buffer)
void buffer_grow(struct buffer *buffer, const char *data, size_t size)