From 03f0e39f7f0389dce84406e489ec33debce8e555 Mon Sep 17 00:00:00 2001 From: "Wolfgang (Blub) Bumiller" Date: Fri, 16 Nov 2012 22:06:07 +0100 Subject: [PATCH] ftepp_out can now output to a string buffer --- ftepp.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/ftepp.c b/ftepp.c index 9cd2903..e1a8e30 100644 --- a/ftepp.c +++ b/ftepp.c @@ -61,6 +61,9 @@ typedef struct { bool output_on; ppcondition *conditions; ppmacro **macros; + + bool output_string; + char *output; } ftepp_t; #define ftepp_tokval(f) ((f)->lex->tok.value) @@ -154,7 +157,15 @@ static void ftepp_out(ftepp_t *ftepp, const char *str, bool ignore_cond) { if (ignore_cond || ftepp->output_on) { - printf("%s", str); + size_t len; + char *data; + if (!ftepp->output_string) { + printf("%s", str); + return; + } + len = strlen(str); + data = vec_add(ftepp->output, len); + memcpy(data, str, len); } } -- 2.39.2