diff options
Diffstat (limited to 'mdk-stage1/dietlibc/lib/vfprintf.c')
-rw-r--r-- | mdk-stage1/dietlibc/lib/vfprintf.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/lib/vfprintf.c b/mdk-stage1/dietlibc/lib/vfprintf.c new file mode 100644 index 000000000..0ebfd1561 --- /dev/null +++ b/mdk-stage1/dietlibc/lib/vfprintf.c @@ -0,0 +1,15 @@ +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> + +int vfprintf(FILE *fstream, const char *format, va_list ap) +{ + char *tmp; + size_t n=vsnprintf(0, 1000000, format, ap); + tmp=alloca(n+2); + if (tmp) { + vsnprintf(tmp, n+1, format, ap); + fwrite(tmp, n,1, fstream); + } + return n; +} |