mesa: Only complain about an infinite loop in a swrast program once.
authorEric Anholt <eric@anholt.net>
Thu, 22 Jul 2010 19:16:11 +0000 (12:16 -0700)
committerEric Anholt <eric@anholt.net>
Thu, 22 Jul 2010 19:16:11 +0000 (12:16 -0700)
Chances are, if one fragment looped badly, others will too, and
debugging output gets overwhelmed by the looping complaints.

src/mesa/shader/prog_execute.c

index f85c6513f3194c92d7c183674863a7841cce55d2..b6da3449b2667dfa9735f38c00e6897a3f8d4644 100644 (file)
@@ -1788,7 +1788,11 @@ _mesa_execute_program(GLcontext * ctx,
 
       numExec++;
       if (numExec > maxExec) {
-         _mesa_problem(ctx, "Infinite loop detected in fragment program");
+        static GLboolean reported = GL_FALSE;
+        if (!reported) {
+           _mesa_problem(ctx, "Infinite loop detected in fragment program");
+           reported = GL_TRUE;
+        }
          return GL_TRUE;
       }