aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian <[email protected]>2007-10-29 10:01:15 -0600
committerBrian <[email protected]>2007-10-29 10:01:15 -0600
commit40133487dbdd14456a8a4f6a5716f57a36eb1ea7 (patch)
tree809f3cdd1b2cd5186939d66c51bc148763fd994e
parent162914675a91034db71c0dc8e37189ac3337ba34 (diff)
disable ctx->Driver.NewProgram() call in _mesa_new_program()
This was causing infinite recursive calls w/ software drivers. All vertex/fragment shaders should be allocated by calling ctx->Driver.NewProgram(), not by calling _mesa_new_program().
-rw-r--r--src/mesa/shader/program.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mesa/shader/program.c b/src/mesa/shader/program.c
index 11330e24322..43e6fb0be02 100644
--- a/src/mesa/shader/program.c
+++ b/src/mesa/shader/program.c
@@ -285,8 +285,13 @@ _mesa_init_vertex_program( GLcontext *ctx, struct gl_vertex_program *prog,
struct gl_program *
_mesa_new_program(GLcontext *ctx, GLenum target, GLuint id)
{
+#if 0
+ /* This was added by Nan hai Zou but disabled by BrianP since it
+ * causes infinite recursive calls.
+ */
if (ctx->Driver.NewProgram)
return ctx->Driver.NewProgram(ctx, target, id);
+#endif
switch (target) {
case GL_VERTEX_PROGRAM_ARB: /* == GL_VERTEX_PROGRAM_NV */
return _mesa_init_vertex_program(ctx, CALLOC_STRUCT(gl_vertex_program),