Module: Mesa Branch: master Commit: 94bf2d48e19b86a4cfa4ff3bf3da97967f8a2793 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=94bf2d48e19b86a4cfa4ff3bf3da97967f8a2793
Author: Brian Paul <[email protected]> Date: Sat Jan 7 14:16:27 2012 -0700 util: add debug_warn_once() macro Emits a warning message, but only once to avoid tons of repeated warnings. --- src/gallium/auxiliary/util/u_debug.h | 19 +++++++++++++++++++ 1 files changed, 19 insertions(+), 0 deletions(-) diff --git a/src/gallium/auxiliary/util/u_debug.h b/src/gallium/auxiliary/util/u_debug.h index cbea358..ed19cda 100644 --- a/src/gallium/auxiliary/util/u_debug.h +++ b/src/gallium/auxiliary/util/u_debug.h @@ -215,6 +215,25 @@ void _debug_assert_fail(const char *expr, /** + * Emit a warning message, but only once. + */ +#ifdef DEBUG +#define debug_warn_once(__msg) \ + do { \ + static bool warned = FALSE; \ + if (!warned) { \ + _debug_printf("%s:%u:%s: one time warning: %s\n", \ + __FILE__, __LINE__, __FUNCTION__, __msg); \ + warned = TRUE; \ + } \ + } while (0) +#else +#define debug_warn_once(__msg) \ + ((void)0) +#endif + + +/** * Output an error message. Not muted on release version. */ #ifdef DEBUG _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
