diff options
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/r300/r300_context.c | 9 | ||||
-rw-r--r-- | src/gallium/drivers/r300/r300_context.h | 4 |
2 files changed, 7 insertions, 6 deletions
diff --git a/src/gallium/drivers/r300/r300_context.c b/src/gallium/drivers/r300/r300_context.c index 4721b7d5dc9..85e45d8647d 100644 --- a/src/gallium/drivers/r300/r300_context.c +++ b/src/gallium/drivers/r300/r300_context.c @@ -253,11 +253,12 @@ void r300_finish(struct r300_context *r300) if (fb->cbufs[i]->texture) { r300->rws->buffer_wait(r300->rws, r300_texture(fb->cbufs[i]->texture)->buffer); + return; } - if (fb->zsbuf) { - r300->rws->buffer_wait(r300->rws, - r300_texture(fb->zsbuf->texture)->buffer); - } + } + if (fb->zsbuf && fb->zsbuf->texture) { + r300->rws->buffer_wait(r300->rws, + r300_texture(fb->zsbuf->texture)->buffer); } } } diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h index 82183cfcb8b..efc6df3fabf 100644 --- a/src/gallium/drivers/r300/r300_context.h +++ b/src/gallium/drivers/r300/r300_context.h @@ -259,8 +259,8 @@ struct r300_query { * * This is not a subclass of pipe_fence_handle because pipe_fence_handle is * never actually fully defined. So, rather than have it as a member, and do - * subclass-style casting, we treat pipe_query as an opaque, and just - * trust that our state tracker does not ever mess up query objects. + * subclass-style casting, we treat pipe_fence_handle as an opaque, and just + * trust that our state tracker does not ever mess up fence objects. */ struct r300_fence { struct pipe_reference reference; |