diff options
author | Marek Olšák <[email protected]> | 2011-03-05 21:23:54 +0100 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2011-03-08 23:52:37 +0100 |
commit | b39bccbd4ed71e9585da4cf5acf7b887b2e90899 (patch) | |
tree | 8aafddda49b4d4e4cdf19ec76350583b7c4d41b4 /src/mesa/state_tracker | |
parent | 5257a6dbc65d742e6d0fcf4278a4157b2f39fdf7 (diff) |
gallium: add timeout parameter to fence_finish
This is a follow-up to the ARB_sync patch for st/mesa and completes
the ARB_sync implementation.
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r-- | src/mesa/state_tracker/st_cb_flush.c | 3 | ||||
-rw-r--r-- | src/mesa/state_tracker/st_cb_syncobj.c | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/mesa/state_tracker/st_cb_flush.c b/src/mesa/state_tracker/st_cb_flush.c index 5a2343d3aec..35ab00f6d01 100644 --- a/src/mesa/state_tracker/st_cb_flush.c +++ b/src/mesa/state_tracker/st_cb_flush.c @@ -103,7 +103,8 @@ void st_finish( struct st_context *st ) st_flush(st, PIPE_FLUSH_RENDER_CACHE | PIPE_FLUSH_FRAME, &fence); if(fence) { - st->pipe->screen->fence_finish(st->pipe->screen, fence, 0); + st->pipe->screen->fence_finish(st->pipe->screen, fence, 0, + PIPE_TIMEOUT_INFINITE); st->pipe->screen->fence_reference(st->pipe->screen, &fence, NULL); } } diff --git a/src/mesa/state_tracker/st_cb_syncobj.c b/src/mesa/state_tracker/st_cb_syncobj.c index 69a8678a7c0..85aad08cc70 100644 --- a/src/mesa/state_tracker/st_cb_syncobj.c +++ b/src/mesa/state_tracker/st_cb_syncobj.c @@ -96,8 +96,8 @@ static void st_client_wait_sync(struct gl_context *ctx, /* We don't care about GL_SYNC_FLUSH_COMMANDS_BIT, because flush is * already called when creating a fence. */ - if (so->fence) { - screen->fence_finish(screen, so->fence, 0); + if (so->fence && + screen->fence_finish(screen, so->fence, 0, timeout) == 0) { screen->fence_reference(screen, &so->fence, NULL); so->b.StatusFlag = GL_TRUE; } |