summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/dri
diff options
context:
space:
mode:
authorCooper Yuan <[email protected]>2011-08-16 09:32:10 +0800
committerCooper Yuan <[email protected]>2011-08-16 09:32:10 +0800
commit9b784069ce76e1914eaafac0542458f6a84d9fc0 (patch)
treef50fd6cf28dd0ca26c6f07454065a727297d3c8d /src/gallium/state_trackers/dri
parenta313c29c777de0bc74c252f1d35eef7d3d907e1f (diff)
dri2: add code to dri2_Flush extension.
It's going to flush client's commands in eglWaitClient(). Before this, egl applications using pixmap or pbuffer flicker because of no flush. Reviewed-by: Alan Hourihane
Diffstat (limited to 'src/gallium/state_trackers/dri')
-rw-r--r--src/gallium/state_trackers/dri/drm/dri2.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/dri/drm/dri2.c b/src/gallium/state_trackers/dri/drm/dri2.c
index d491e46ab16..908a735234e 100644
--- a/src/gallium/state_trackers/dri/drm/dri2.c
+++ b/src/gallium/state_trackers/dri/drm/dri2.c
@@ -46,6 +46,10 @@
static void
dri2_flush_drawable(__DRIdrawable *draw)
{
+ struct dri_drawable *drawable = dri_drawable(draw);
+ struct dri_context *ctx = dri_get_current(draw->driScreenPriv);
+
+ ctx->st->flush(ctx->st, 0, NULL);
}
static void