diff options
author | Jakob Bornecrantz <wallbraker@gmail.com> | 2009-01-29 02:33:22 +0100 |
---|---|---|
committer | Jakob Bornecrantz <wallbraker@gmail.com> | 2009-01-29 03:00:15 +0100 |
commit | 86e86e6cb6efbd06289fb0cc263ab168d4f77112 (patch) | |
tree | ef85488938b073af5cc20812750b04f13f310b53 /src/gallium | |
parent | 3b1b9f3cc70392bd1abb76e78a28db15bfbbbe85 (diff) |
egl: Blit to the bound frontbuffer with pipe
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/state_trackers/egl/egl_surface.c | 8 |
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 edc3a2f4e0..9e13f2fe58 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; |