diff options
Diffstat (limited to 'contrib/syslinux-4.02/com32/lib/vfprintf.c')
-rw-r--r-- | contrib/syslinux-4.02/com32/lib/vfprintf.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/contrib/syslinux-4.02/com32/lib/vfprintf.c b/contrib/syslinux-4.02/com32/lib/vfprintf.c new file mode 100644 index 0000000..be08421 --- /dev/null +++ b/contrib/syslinux-4.02/com32/lib/vfprintf.c @@ -0,0 +1,26 @@ +/* + * vfprintf.c + */ + +#include <stdio.h> +#include <string.h> +#include <stdarg.h> +#include <unistd.h> + +#define BUFFER_SIZE 32768 + +int vfprintf(FILE * file, const char *format, va_list ap) +{ + int rv; + char buffer[BUFFER_SIZE]; + + rv = vsnprintf(buffer, BUFFER_SIZE, format, ap); + + if (rv < 0) + return rv; + + if (rv > BUFFER_SIZE - 1) + rv = BUFFER_SIZE - 1; + + return _fwrite(buffer, rv, file); +} |