syslinux/com32/lib/asprintf.c
<<
>>
Prefs
   1/*
   2 * asprintf.c
   3 */
   4
   5#include <stdio.h>
   6#include <stdlib.h>
   7#include <stdarg.h>
   8
   9int asprintf(char **bufp, const char *format, ...)
  10{
  11    va_list ap, ap1;
  12    int rv;
  13    int bytes;
  14    char *p;
  15
  16    va_start(ap, format);
  17    va_copy(ap1, ap);
  18
  19    bytes = vsnprintf(NULL, 0, format, ap1) + 1;
  20    va_end(ap1);
  21
  22    *bufp = p = malloc(bytes);
  23    if (!p)
  24        return -1;
  25
  26    rv = vsnprintf(p, bytes, format, ap);
  27    va_end(ap);
  28
  29    return rv;
  30}
  31
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.