[PATCH] include: add BUG_RETURN_* macros
Peter Hutterer
peter.hutterer at who-t.net
Wed May 9 21:25:25 PDT 2012
Helper functions to avoid things like
if (foo) {
BUG_WARN(foo);
return 1;
}
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
---
include/misc.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/include/misc.h b/include/misc.h
index 41c1333..a57efa0 100644
--- a/include/misc.h
+++ b/include/misc.h
@@ -380,5 +380,14 @@ extern _X_EXPORT unsigned long serverGeneration;
__BUG_WARN_MSG(cond, 1, __VA_ARGS__)
#define BUG_WARN(cond) __BUG_WARN_MSG(cond, 0, NULL)
+#define BUG_RETURN(cond) \
+ do { __BUG_WARN_MSG(cond, 0, NULL); return; } while(0)
+#define BUG_RETURN_MSG(cond, ...) \
+ do { __BUG_WARN_MSG(cond, 1, __VA_ARGS__); return; } while(0)
+#define BUG_RETURN_VAL(cond, val) \
+ do { __BUG_WARN_MSG(cond, 0, NULL); return (val); } while(0)
+
+#define BUG_RETURN_VAL_MSG(cond, val, ...) \
+ do { __BUG_WARN_MSG(cond, 1, __VA_ARGS__); return (val); } while(0)
#endif /* MISC_H */
--
1.7.10.1
More information about the xorg-devel
mailing list