From c014d0372ba73640cd161dee6cc6478ba996c935 Mon Sep 17 00:00:00 2001 From: foreman Date: Fri, 17 Mar 2017 18:44:15 -0400 Subject: [PATCH] P4 to Git Change 1387401 by rili@rili-opencl-pal-stg on 2017/03/17 18:35:37 SWDEV-97489 - Initialize variable and fix incorrect code of checking if D3D function finish. Affected files ... ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d10.cpp#14 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d11.cpp#21 edit ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_d3d9.cpp#31 edit [ROCm/clr commit: 0b51901411d5fb859da9f1a26c36c803f60eb38b] --- projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp | 4 ++-- projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp | 8 ++++---- projects/clr/opencl/api/opencl/amdocl/cl_d3d9.cpp | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp b/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp index 61f874009c..e0063bc7b2 100644 --- a/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp +++ b/projects/clr/opencl/api/opencl/amdocl/cl_d3d10.cpp @@ -646,8 +646,8 @@ void SyncD3D10Objects(std::vector& memObjects) return; } query->End(); - BOOL data; - while(S_OK != query->GetData(&data, sizeof(BOOL), 0) && data != TRUE) + BOOL data = FALSE; + while(S_OK != query->GetData(&data, sizeof(BOOL), 0)) { } } diff --git a/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp b/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp index 445e9d2db7..58e99237f5 100644 --- a/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp +++ b/projects/clr/opencl/api/opencl/amdocl/cl_d3d11.cpp @@ -1004,19 +1004,19 @@ D3D11Object::copyOrigToShared() // Any usage source can be read by GPU pImmediateContext->CopySubresourceRegion(pD3D11Res_, 0, 0, 0, 0, pD3D11ResOrig_, subRes_, NULL); - pImmediateContext->Release(); // Flush D3D queues and make sure D3D stuff is finished { - ScopedLock sl(resLock_);//protect from multiple + ScopedLock sl(resLock_);//protect from multiple pImmediateContext->Flush(); pImmediateContext->End(pQuery_); - BOOL data; - while(S_OK != pImmediateContext->GetData(pQuery_, &data, sizeof(BOOL), 0) && data != TRUE) + BOOL data = FALSE; + while(S_OK != pImmediateContext->GetData(pQuery_, &data, sizeof(BOOL), 0)); { } } + pImmediateContext->Release(); d3dDev->Release(); return true; } diff --git a/projects/clr/opencl/api/opencl/amdocl/cl_d3d9.cpp b/projects/clr/opencl/api/opencl/amdocl/cl_d3d9.cpp index 388b863ab6..2e64268005 100644 --- a/projects/clr/opencl/api/opencl/amdocl/cl_d3d9.cpp +++ b/projects/clr/opencl/api/opencl/amdocl/cl_d3d9.cpp @@ -329,8 +329,8 @@ void SyncD3D9Objects(std::vector& memObjects) } ScopedLock sl(d3d9Obj->getResLock()); query->Issue(D3DISSUE_END); - BOOL data; - while(S_OK != query->GetData(&data, sizeof(BOOL), D3DGETDATA_FLUSH) && data != TRUE) + BOOL data = FALSE; + while(S_OK != query->GetData(&data, sizeof(BOOL), D3DGETDATA_FLUSH)) { } }