Mercurial
view third_party/wrk/src/aprintf.c @ 195:f8f5004a920a
Merging back hg-web-tip
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Tue, 27 Jan 2026 06:51:44 -0800 |
| parents | 94705b5986b3 |
| children |
line wrap: on
line source
// Copyright (C) 2012 - Will Glozer. All rights reserved. #include <stdarg.h> #include <stdlib.h> #include <stdio.h> #include <string.h> char *aprintf(char **s, const char *fmt, ...) { char *c = NULL; int n, len; va_list ap; va_start(ap, fmt); n = vsnprintf(NULL, 0, fmt, ap) + 1; va_end(ap); len = *s ? strlen(*s) : 0; if ((*s = realloc(*s, (len + n) * sizeof(char)))) { c = *s + len; va_start(ap, fmt); vsnprintf(c, n, fmt, ap); va_end(ap); } return c; }