stw: Fix minor st_api migration glitches.
authorJosé Fonseca <jfonseca@vmware.com>
Sun, 11 Apr 2010 08:58:17 +0000 (17:58 +0900)
committerJosé Fonseca <jfonseca@vmware.com>
Mon, 12 Apr 2010 06:32:21 +0000 (15:32 +0900)
src/gallium/state_trackers/wgl/stw_context.c
src/gallium/state_trackers/wgl/stw_st.c

index 663d8b8090c9d5c994283264b29d12aef91fdaa1..0fb7cd83069254950343fc505f1f2c83bba33932 100644 (file)
@@ -320,7 +320,7 @@ stw_make_current(
    if (!stw_dev->stapi->make_current(stw_dev->stapi, ctx->st, fb->stfb, fb->stfb))
       goto fail;
 
-   stw_framebuffer_reference(&curctx->current_framebuffer, fb);
+   stw_framebuffer_reference(&ctx->current_framebuffer, fb);
 
 success:
    assert(fb);
index 6c71f2ac452dda0c0583415e011efdcd5837d09f..1decc6237be8d0b76bd6deda63ce31115512ae3c 100644 (file)
@@ -65,6 +65,10 @@ stw_st_framebuffer_validate_locked(struct st_framebuffer_iface *stfb,
    struct pipe_texture templ;
    unsigned i;
 
+   /* remove outdated surface */
+   pipe_surface_reference(&stwfb->front_surface, NULL);
+   pipe_surface_reference(&stwfb->back_surface, NULL);
+
    /* remove outdated textures */
    if (stwfb->texture_width != width || stwfb->texture_height != height) {
       for (i = 0; i < ST_ATTACHMENT_COUNT; i++)
@@ -137,7 +141,7 @@ stw_st_framebuffer_validate(struct st_framebuffer_iface *stfb,
 
    if (stwfb->fb->must_resize || (statt_mask & ~stwfb->texture_mask)) {
       stw_st_framebuffer_validate_locked(&stwfb->base,
-            statt_mask, stwfb->fb->width, stwfb->fb->height);
+            stwfb->fb->width, stwfb->fb->height, statt_mask);
       stwfb->fb->must_resize = FALSE;
    }