]> de.git.xonotic.org Git - xonotic/gmqcc.git/commitdiff
using ftepp_out which will honor conditions
authorWolfgang (Blub) Bumiller <blub@speed.at>
Fri, 16 Nov 2012 17:29:46 +0000 (18:29 +0100)
committerWolfgang (Blub) Bumiller <blub@speed.at>
Fri, 16 Nov 2012 17:29:46 +0000 (18:29 +0100)
ftepp.c

diff --git a/ftepp.c b/ftepp.c
index 7b31a601f0a2d6f44ae9ff01c1c41273a23eb245..769310b4ff54e8a057066e22afedfd61aaf6064c 100644 (file)
--- 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;
                }