]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/lib/log.qh
assert_once
[xonotic/xonotic-data.pk3dir.git] / qcsrc / lib / log.qh
index 8a52073396bdedbedd9d15e06cd72ac07f8f9cbf..ab94e571bc004fc1c79c054efe2cff1caf94ef6b 100644 (file)
        } MACRO_END
 
 #define assert(expr, ...) _assert(LOG_SEVERE, expr, __VA_ARGS__)
-#define ASSERT(expr, ...) _assert(LOG_FATAL, expr, __VA_ARGS__)
+#define assert_once(expr, ...) \
+       MACRO_BEGIN { \
+               static bool __once; \
+               if (!__once) \
+               { \
+                       assert(expr, __VA_ARGS__); \
+                       __once = true; \
+               } \
+       } MACRO_END
+#define demand(expr, ...) _assert(LOG_FATAL, expr, __VA_ARGS__)
 #define _assert(f, expr, then) \
        MACRO_BEGIN \
        { \