Bug 29431

Summary: Nurb demos fail when callists are executed.
Product: Mesa Reporter: peter garrone <pgarrone>
Component: Mesa coreAssignee: mesa-dev
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: 7.6   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: patch on nurb.c
code to implement macros that invoke genlist calls.

Description peter garrone 2010-08-06 21:34:15 UTC
Created attachment 37656 [details] [review]
patch on nurb.c

The latest version of software I have is 7.7.1, using i965 driver, ubuntu package.
If any nurbs demo is modified so that it is captured in a calllist, then it generates an opengl error when the calllist is invoked, even though there is no error if instead of going to the calllist, the commands are directly executed, or if the GL_COMPILE_AND_EXECUTE mode is set. However in the latter case, the calllist still fails if subsequently executed.

attached is a file called local.h, which contains macro definitions to implement test software, and a file called nurb.patch, which is a patch on the file progs/samples/nurb.c in the mesa demos package.

To verify that this error does not exist, place local.h in the same directory as nurb.c, apply nurb.patch, compile and run the program. If it fails with the environmental variable DOLIST set to 'y', but otherwise works, then there is no longer any error.

The error message GL_INVALID_OPERATION in glEnd generally appears with debugging set.

This error also appears with other nurb demos similarly modified, such as nurbs.c, surface.c, and trim.c.
Comment 1 peter garrone 2010-08-06 21:35:55 UTC
Created attachment 37657 [details]
code to implement macros that invoke genlist calls.
Comment 2 Eric Anholt 2010-08-17 15:01:32 UTC
This is unlikely to be driver-specific, so reassigning to core.
Comment 3 Timothy Arceri 2019-05-06 07:22:12 UTC
There is no longer any error generated. Seems to have been fixed some time in the last 9 years :P

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.