Eero Pajarre wrote:
> 
> Brian Paul wrote:
> >
> > Eero Pajarre wrote:
> > >
> > > It appears that glEnd does not directly set Current.Primitive
> > > to GL_POLYGON+1, leaving this task to vbxform code. (which
> > > is not always called here)
> > >
> > > glGetError checks the Current.Primitive directly before
> > > calling VB_FLUSH.
> > >
> > > This seems to lead to incorrect errors of type
> > > "glGetError called between begin/end"
> >
> > Someone had reported to me a bug related to this.  His application
> > had a call to glGetError() after _every_ GL call, even, glBegin,
> > glVertex, etc.  Mesa was crashing on him, inside one of the glGetError
> > calls.  I made a small change to it on Saturday and he reported that
> > it fixed his problem.  Perhaps Keith and you should take a look at
> > it too.
> >
> 
> Looking at the diffs between the versions, it looks like
> that the fix must be fixed...
> 
> I thought that it is not legal to call GetError between Begin/End.
> That should not crash the application of course. But for the time
> being it might be better to revert to the old behaviour, unless Keith
> can create quick+complete fix :-)
> 

OK.  The fix is definitely wrong - the Current.Primitive value is only valid
after calling a FLUSH_VB().  I reverted to the old code, and modified a couple of
demos to call glGetError() inside begin/end pairs - but I didn't see the crash.

Brian - is there a demo program or more info about what was happening to this
guy, or why that change helped him?

Keith


_______________________________________________
Mesa-dev maillist  -  [EMAIL PROTECTED]
http://lists.mesa3d.org/mailman/listinfo/mesa-dev

Reply via email to