summaryrefslogtreecommitdiff
path: root/xserver/glx
diff options
context:
space:
mode:
Diffstat (limited to 'xserver/glx')
-rw-r--r--xserver/glx/glxdriswrast.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/xserver/glx/glxdriswrast.c b/xserver/glx/glxdriswrast.c
index c69b4d258..87ad1e619 100644
--- a/xserver/glx/glxdriswrast.c
+++ b/xserver/glx/glxdriswrast.c
@@ -422,7 +422,7 @@ initializeExtensions(__GLXDRIscreen * screen)
static __GLXscreen *
__glXDRIscreenProbe(ScreenPtr pScreen)
{
- const char *driverName = "swrast";
+ const char *driverName = "swrastg";
__GLXDRIscreen *screen;
screen = calloc(1, sizeof *screen);
@@ -440,6 +440,16 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
__DRI_CORE, __DRI_CORE_VERSION,
(void **) &screen->swrast,
__DRI_SWRAST, __DRI_SWRAST_VERSION);
+
+ if (screen->driver == NULL) {
+ driverName = "swrast";
+ screen->driver = glxProbeDriver(driverName,
+ (void **) &screen->core,
+ __DRI_CORE, __DRI_CORE_VERSION,
+ (void **) &screen->swrast,
+ __DRI_SWRAST, __DRI_SWRAST_VERSION);
+ }
+
if (screen->driver == NULL) {
goto handle_error;
}