diff options
author | Axel Davy <[email protected]> | 2016-05-07 16:25:03 +0200 |
---|---|---|
committer | Axel Davy <[email protected]> | 2016-10-10 23:43:49 +0200 |
commit | a5d308e51a7be7e90d1373fa8ec7813ae8018ae5 (patch) | |
tree | e0d00fff03159a8fb2e688e197b23c964c9b56b6 /src/gallium | |
parent | f090705075201c16664caa613bec244053404bbb (diff) |
st/nine: Wait for pending tasks to execute in swapchain
Fixes crash after Reset() when using thread_submit=true
Signed-off-by: Axel Davy <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/state_trackers/nine/swapchain9.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/nine/swapchain9.c b/src/gallium/state_trackers/nine/swapchain9.c index 31060632370..fcda9c7837e 100644 --- a/src/gallium/state_trackers/nine/swapchain9.c +++ b/src/gallium/state_trackers/nine/swapchain9.c @@ -243,6 +243,10 @@ NineSwapChain9_Resize( struct NineSwapChain9 *This, desc.Width = pParams->BackBufferWidth; desc.Height = pParams->BackBufferHeight; + for (i = 0; i < oldBufferCount; i++) { + if (This->tasks[i]) + _mesa_threadpool_wait_for_task(This->pool, &(This->tasks[i])); + } memset(This->tasks, 0, sizeof(This->tasks)); if (This->pool) { |