llvmpipe: Flush draw module before switching framebuffer.
authorJosé Fonseca <jfonseca@vmware.com>
Sat, 26 Dec 2009 11:00:42 +0000 (11:00 +0000)
committerJosé Fonseca <jfonseca@vmware.com>
Sat, 26 Dec 2009 11:00:42 +0000 (11:00 +0000)
Otherwise geometry will end up in the wrong rendertarget.

src/gallium/drivers/llvmpipe/lp_state_surface.c

index ba970cac985eac390ede9c80f859483993a37d1d..e37ff04f3df172aab3e3c764a645f2124c5f715f 100644 (file)
@@ -51,6 +51,8 @@ llvmpipe_set_framebuffer_state(struct pipe_context *pipe,
    struct llvmpipe_context *lp = llvmpipe_context(pipe);
    uint i;
 
+   draw_flush(lp->draw);
+
    for (i = 0; i < PIPE_MAX_COLOR_BUFS; i++) {
       /* check if changing cbuf */
       if (lp->framebuffer.cbufs[i] != fb->cbufs[i]) {