From: Wolfgang (Blub) Bumiller Date: Fri, 16 Nov 2012 17:29:46 +0000 (+0100) Subject: using ftepp_out which will honor conditions X-Git-Tag: 0.1.9~404^2~55 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=0473fd84d1f79e55c87b9cb1a8b13d995a6bc141;p=xonotic%2Fgmqcc.git using ftepp_out which will honor conditions --- diff --git a/ftepp.c b/ftepp.c index 7b31a60..769310b 100644 --- a/ftepp.c +++ b/ftepp.c @@ -315,6 +315,15 @@ static bool ftepp_hash(ftepp_t *ftepp) return true; } +static void ftepp_out(ftepp_t *ftepp, const char *str) +{ + if (!vec_size(ftepp->conditions) || + vec_last(ftepp->conditions).on) + { + printf("%s", str); + } +} + static bool ftepp_preprocess(ftepp_t *ftepp) { bool newline = true; @@ -333,7 +342,7 @@ static bool ftepp_preprocess(ftepp_t *ftepp) switch (ftepp->token) { case '#': if (!ftepp->newline) { - printf("%s", ftepp_tokval(ftepp)); + ftepp_out(ftepp, ftepp_tokval(ftepp)); ftepp_next(ftepp); break; } @@ -347,11 +356,11 @@ static bool ftepp_preprocess(ftepp_t *ftepp) break; case TOKEN_EOL: newline = true; - printf("\n"); + ftepp_out(ftepp, "\n"); ftepp_next(ftepp); break; default: - printf("%s", ftepp_tokval(ftepp)); + ftepp_out(ftepp, ftepp_tokval(ftepp)); ftepp_next(ftepp); break; }