On Mon, Oct 15, 2012 at 8:41 AM, Jason Wood <sand...@hotmail.com> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 10/12/2012 04:30 PM, Eric Anholt wrote: >> There are a number of places where some obscure piece of the code >> is not currently worth fixing, and we have some workaround behavior >> available. It's nicer for users to do some lame workaround than to >> just assert, but without asserts we never knew when the workaround >> was at fault. >> >> This should give us a nice compromise: Execute the workaround, but >> mention that the obscure workaround was hit. --- >> src/mesa/drivers/dri/intel/intel_context.h | 11 +++++++++++ 1 >> file changed, 11 insertions(+) >> >> diff --git a/src/mesa/drivers/dri/intel/intel_context.h >> b/src/mesa/drivers/dri/intel/intel_context.h index b732696..eeefadf >> 100644 --- a/src/mesa/drivers/dri/intel/intel_context.h +++ >> b/src/mesa/drivers/dri/intel/intel_context.h @@ -483,6 +483,17 @@ >> extern int INTEL_DEBUG; dbg_printf(__VA_ARGS__); \ } >> while(0) >> >> +#define WARN_ONCE(cond, fmt...) do { \ >> + if (unlikely(cond)) { \ >> + static bool _warned = false; \ >> + if (!_warned) { \ > > I could be wrong here because I'm not super familiar with how macros > work.. > > It looks like this if statement will _always_ evaluate to true given > that you just initialized the value in the previous line. I assume > this is not the behavior that you were after.
_warned has a static initializer, so it's initialized at runtime and never again. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev