Stephen J Baker wrote:
> 
> On Wed, 8 Nov 2000, Brian Paul wrote:
> 
> > Jon Leech wrote:
> > >
> > > On Fri, Nov 03, 2000 at 10:19:37AM -0800, Ron Bielaski wrote:
> > > > Can someone help refresh my memory about what happens when an
> > > > extension function exists in the library and is called but is
> > > > not supported by the device?
> > >
> > >     If you mean specifically WRT the Linux ABI, the correct answer at
> > > this point is "whatever Brian's implementation in XFree86 4 does".
> >
> > It'll be a no-op. Both in XFree86/DRI and stand-alone Mesa.
> 
> I don't think you should rely on that.  It's "undefined" - which
> means anything from a No-op to a core dump.

Right, no one should rely on that.  I'm just saying what happens now.


> > >     It's an application error; making such an invalid call doesn't even
> > > necessarily fall under the "will not terminate the GL" caveat in the
> > > Specification IMO. More benign failure modes, such as returning
> > > GL_UNSUPPORTED_OPERATION or generating a GLX error, are probably
> > > desirable when possible - but they aren't always possible.
> 
> Exactly.
> 
> > I found it to be a simple matter to initialize all dispatch tables
> > with pointers to no-op functions.  The no-op function could easily
> > be modified to abort or print an error message, but I'd like to
> > keep it a plain no-op.
> 
> I think it should abort - otherwise people will write programs
> (badly) using Mesa and wonder why they crash on other OpenGL's.
> 
> I'm not a great fan of (potentially) burdening drivers with
> the need to operate correctly in the face of a broken application.
> Whilst it's nice to hear that Mesa can provide a clean fallback
> for missing functions - I don't think we should require other
> OpenGL implementations to do the same.

I don't care what other OpenGL implementations do.

If the Linux/ABI spec determines that there should be a particular
behaviour I'll do whatever it says, of course.

Otherwise, I've got more important things to work on.

-Brian

Reply via email to