summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/state_trackers/egl/egl_surface.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/egl/egl_surface.c b/src/gallium/state_trackers/egl/egl_surface.c
index edc3a2f4e06..9e13f2fe585 100644
--- a/src/gallium/state_trackers/egl/egl_surface.c
+++ b/src/gallium/state_trackers/egl/egl_surface.c
@@ -280,6 +280,7 @@ drm_show_screen_surface_mesa(_EGLDriver *drv, EGLDisplay dpy,
struct drm_device *dev = (struct drm_device *)drv;
struct drm_surface *surf = lookup_drm_surface(surface);
struct drm_screen *scrn = lookup_drm_screen(dpy, screen);
+ struct pipe_context *pipe;
_EGLMode *mode = _eglLookupMode(dpy, m);
int ret;
unsigned int i, k;
@@ -339,6 +340,13 @@ drm_show_screen_surface_mesa(_EGLDriver *drv, EGLDisplay dpy,
if (ret)
goto err_crtc;
+ pipe = drm_api_hocks.create_context(dev->screen);
+ pipe->surface_fill(pipe, scrn->surface,
+ 0, 0,
+ scrn->front.width, scrn->front.height,
+ 0xFF00FFFF);
+ pipe->destroy(pipe);
+
surf->screen = scrn;
scrn->surf = surf;