summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/xvmc
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/state_trackers/xvmc')
-rw-r--r--src/gallium/state_trackers/xvmc/context.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/xvmc/context.c b/src/gallium/state_trackers/xvmc/context.c
index e9014c8bf53..c239b3ddd6b 100644
--- a/src/gallium/state_trackers/xvmc/context.c
+++ b/src/gallium/state_trackers/xvmc/context.c
@@ -229,7 +229,9 @@ Status XvMCCreateContext(Display *dpy, XvPortID port, int surface_type_id,
return BadAlloc;
/* TODO: Reuse screen if process creates another context */
- vscreen = vl_dri2_screen_create(dpy, scrn);
+ vscreen = vl_dri3_screen_create(dpy, scrn);
+ if (!vscreen)
+ vscreen = vl_dri2_screen_create(dpy, scrn);
if (!vscreen) {
XVMC_MSG(XVMC_ERR, "[XvMC] Could not create VL screen.\n");