]> git.rm.cloudns.org Git - xonotic/gmqcc.git/commitdiff
properly mask #message, #warning, #error by ftepp->output_on
authorWolfgang Bumiller <blub@speed.at>
Sun, 3 Feb 2013 22:23:50 +0000 (23:23 +0100)
committerWolfgang Bumiller <blub@speed.at>
Sun, 3 Feb 2013 22:23:50 +0000 (23:23 +0100)
ftepp.c

diff --git a/ftepp.c b/ftepp.c
index 88705512ac44c0985966afbc4a97c6f5a612a291..27e3afe2ed17d4c72b94b697a48303724800d047 100644 (file)
--- a/ftepp.c
+++ b/ftepp.c
@@ -1285,11 +1285,17 @@ static bool ftepp_directive_warning(ftepp_t *ftepp) {
             ftepp_next(ftepp);
         }
         vec_push(message, '\0');
-        store = ftepp_warn(ftepp, WARN_CPP, message);
+        if (ftepp->output_on)
+            store = ftepp_warn(ftepp, WARN_CPP, message);
+        else
+            store = false;
         vec_free(message);
         return store;
     }
 
+    if (!ftepp->output_on)
+        return false;
+
     unescape  (ftepp_tokval(ftepp), ftepp_tokval(ftepp));
     return ftepp_warn(ftepp, WARN_CPP, "#warning %s", ftepp_tokval(ftepp));
 }
@@ -1309,11 +1315,15 @@ static void ftepp_directive_error(ftepp_t *ftepp) {
             ftepp_next(ftepp);
         }
         vec_push(message, '\0');
-        ftepp_error(ftepp, message);
+        if (ftepp->output_on)
+            ftepp_error(ftepp, message);
         vec_free(message);
         return;
     }
 
+    if (!ftepp->output_on)
+        return;
+
     unescape  (ftepp_tokval(ftepp), ftepp_tokval(ftepp));
     ftepp_error(ftepp, "#error %s", ftepp_tokval(ftepp));
 }
@@ -1333,11 +1343,15 @@ static void ftepp_directive_message(ftepp_t *ftepp) {
             ftepp_next(ftepp);
         }
         vec_push(message, '\0');
-        con_cprintmsg(&ftepp->lex->tok.ctx, LVL_MSG, "message", message);
+        if (ftepp->output_on)
+            con_cprintmsg(&ftepp->lex->tok.ctx, LVL_MSG, "message", message);
         vec_free(message);
         return;
     }
 
+    if (!ftepp->output_on)
+        return;
+
     unescape     (ftepp_tokval(ftepp), ftepp_tokval(ftepp));
     con_cprintmsg(&ftepp->lex->tok.ctx, LVL_MSG, "message",  ftepp_tokval(ftepp));
 }