OSDN Git Service

fix vertex program debugger issues (Bug 874382)
authorBrian Paul <brian.paul@tungstengraphics.com>
Sun, 11 Jan 2004 16:48:14 +0000 (16:48 +0000)
committerBrian Paul <brian.paul@tungstengraphics.com>
Sun, 11 Jan 2004 16:48:14 +0000 (16:48 +0000)
src/mesa/main/arbparse.c
src/mesa/main/nvvertexec.c

index 54fef92..4be3953 100644 (file)
@@ -5893,6 +5893,10 @@ parse_arb_program (GLcontext * ctx, GLubyte * inst, struct var_cache **vc_head,
                                                   (Program->Base.NumInstructions+1)*sizeof(struct fp_instruction));
 
       Program->FPInstructions[Program->Base.NumInstructions].Opcode = FP_OPCODE_END;
+      /* YYY Wrong Position in program, whatever, at least not random -> crash
+        Program->Position = parse_position (&inst);
+      */
+      Program->FPInstructions[Program->Base.NumInstructions].StringPos = Program->Position;
    }
    else {
       Program->VPInstructions =
@@ -5901,6 +5905,10 @@ parse_arb_program (GLcontext * ctx, GLubyte * inst, struct var_cache **vc_head,
                                                   (Program->Base.NumInstructions+1)*sizeof(struct vp_instruction));
 
       Program->VPInstructions[Program->Base.NumInstructions].Opcode = VP_OPCODE_END;
+      /* YYY Wrong Position in program, whatever, at least not random -> crash
+        Program->Position = parse_position (&inst);
+      */
+      Program->VPInstructions[Program->Base.NumInstructions].StringPos = Program->Position;
    }
 
    /* increment Program->Base.NumInstructions */
index 66b3363..fd1519e 100644 (file)
@@ -1,8 +1,8 @@
 /*
  * Mesa 3-D graphics library
- * Version:  5.1
+ * Version:  6.0
  *
- * Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
+ * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the "Software"),
@@ -382,9 +382,7 @@ _mesa_exec_vertex_program(GLcontext *ctx, const struct vertex_program *program)
       ctx->VertexProgram.Current->OutputsWritten |= 0x1;
    }
 
-
-
-   for (inst = program->Instructions; inst->Opcode != VP_OPCODE_END; inst++) {
+   for (inst = program->Instructions; /*inst->Opcode != VP_OPCODE_END*/; inst++) {
 
       if (ctx->VertexProgram.CallbackEnabled &&
           ctx->VertexProgram.Callback) {