diff options
author | Christophe Fergeau <cfergeau@mandriva.com> | 2009-04-21 17:18:02 +0000 |
---|---|---|
committer | Christophe Fergeau <cfergeau@mandriva.com> | 2009-04-21 17:18:02 +0000 |
commit | 1f79d81b3faf2988cc1bb238cecbb34e3707fd00 (patch) | |
tree | 7bc2ce3e6e436446834d263143af3bd6f26db03d /lib | |
parent | 3c9092a4681773d9b2a5e2f94e2f4a3cb924fa46 (diff) | |
download | drak3d-1f79d81b3faf2988cc1bb238cecbb34e3707fd00.tar drak3d-1f79d81b3faf2988cc1bb238cecbb34e3707fd00.tar.gz drak3d-1f79d81b3faf2988cc1bb238cecbb34e3707fd00.tar.bz2 drak3d-1f79d81b3faf2988cc1bb238cecbb34e3707fd00.tar.xz drak3d-1f79d81b3faf2988cc1bb238cecbb34e3707fd00.zip |
Fix software rendering detection with newer Mesa
Newer Mesa report that htey support direct rendering even when they are
in software mode and the vendor string no longer says "Mesa" but
"Software Rasterizer". Detect this case, and only set "direct_rendering"
to true when it's not set.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Xconfig/glx.pm | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Xconfig/glx.pm b/lib/Xconfig/glx.pm index 45bef17..814dc06 100644 --- a/lib/Xconfig/glx.pm +++ b/lib/Xconfig/glx.pm @@ -138,6 +138,7 @@ sub get_glx_status { my $glx_status = {}; $glx_status->{context}{Mesa} = $system_glx_info->{strings}{OpenGL_renderer} =~ /Mesa/; + $glx_status->{context}{SoftwareRasterizer} = $system_glx_info->{strings}{OpenGL_renderer} =~ /Software Rasterizer/; $glx_status->{context}{MesaDRI} = $system_glx_info->{strings}{OpenGL_renderer} =~ /Mesa DRI/; $glx_status->{context}{Xgl} = $system_glx_info->{strings}{server_glx_vendor} eq 'SGI' && @@ -149,7 +150,7 @@ sub get_glx_status { $glx_status->{context}{Xmetisse} = is_in_metisse(); $glx_status->{capabilities}{direct_rendering} = - $system_glx_info->{capabilities}{direct_rendering} || + ($system_glx_info->{capabilities}{direct_rendering} && !$glx_status->{context}{SoftwareRasterizer}) || $glx_status->{context}{Xgl} || $glx_status->{context}{Xmetisse}; |