dril implementation in Mesa 24.2 breaks freeglut's fgOpenWindow()
Summary
This is a follow-up from #11830, running freeglut with Xvfb
fails because freeglut cannot find a matching FBconfig
anymore.
The same was working in Mesa < 24.2
Steps to reproduce
- Clone freeglut
$ git clone git clone https://github.com/freeglut/freeglut
- Build freeglut (and its demo programs)
$ cd freeglut
~/freeglut $ cmake .
~/freeglut $ make
- Run a demo program in Xvfb
$ cd bin/
~/freeglut/bin $ xvfb-run ./3dview
freeglut (./3dview): ERROR: Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow
(Note if you do not have the helper shell script xvfb-run
with your distribution, you can as well run Xvfb
and run the demo program on the Xvfb
xserver manually)
Actual result
freeglut (./3dview): ERROR: Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow
Expected result
No error
Additional data
I think this is because freeglut's fgOpenWindow()
cannot find a matching FBconfig
exposed by the new the gallium/dril
implementation in Mesa 24.2, see !28378 (merged)
The same works fine with Mesa 24.1
The freeglut's X11 implementation of fgPlatformOpenWindow()
(from where the error comes) can be found here:
https://github.com/freeglut/freeglut/blob/master/src/x11/fg_window_x11.c#L139