mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-10 12:53:42 +08:00
Correct arguments verification of clEnqueueReleaseDX9ObjectsINTEL call
When clEnqueueReleaseDX9ObjectsINTEL is called and incorrect memory objects list is passed, ensure that api returns gracefully and proper value is returned. Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
This commit is contained in:

committed by
Compute-Runtime-Automation

parent
f043797f51
commit
74bf623ddb
@ -184,6 +184,11 @@ cl_int CL_API_CALL clEnqueueReleaseDX9ObjectsINTEL(cl_command_queue commandQueue
|
|||||||
return retVal;
|
return retVal;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
retVal = validateObjects(MemObjList(numObjects, memObjects));
|
||||||
|
if (retVal != CL_SUCCESS) {
|
||||||
|
return retVal;
|
||||||
|
}
|
||||||
|
|
||||||
for (unsigned int object = 0; object < numObjects; object++) {
|
for (unsigned int object = 0; object < numObjects; object++) {
|
||||||
auto memObject = castToObject<MemObj>(memObjects[object]);
|
auto memObject = castToObject<MemObj>(memObjects[object]);
|
||||||
if (!static_cast<D3DSharing<D3DTypesHelper::D3D9> *>(memObject->peekSharingHandler())->isSharedResource()) {
|
if (!static_cast<D3DSharing<D3DTypesHelper::D3D9> *>(memObject->peekSharingHandler())->isSharedResource()) {
|
||||||
|
@ -1007,6 +1007,12 @@ TEST_F(D3D9Tests, givenInvalidClMemObjectPassedOnReleaseListWhenCallIsMadeThenFa
|
|||||||
EXPECT_EQ(CL_INVALID_MEM_OBJECT, retVal);
|
EXPECT_EQ(CL_INVALID_MEM_OBJECT, retVal);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST_F(D3D9Tests, givenInvalidClMemObjectPassedOnReleaseDX9ObjectsWhenCallIsMadeThenFailureIsReturned) {
|
||||||
|
auto fakeObject = reinterpret_cast<cl_mem>(cmdQ);
|
||||||
|
auto retVal = clEnqueueReleaseDX9ObjectsINTEL(cmdQ, 1, &fakeObject, 0, nullptr, nullptr);
|
||||||
|
EXPECT_EQ(CL_INVALID_MEM_OBJECT, retVal);
|
||||||
|
}
|
||||||
|
|
||||||
TEST_F(D3D9Tests, givenResourcesCreatedFromDifferentDevicesWhenAcquireReleaseCalledThenUpdateDevice) {
|
TEST_F(D3D9Tests, givenResourcesCreatedFromDifferentDevicesWhenAcquireReleaseCalledThenUpdateDevice) {
|
||||||
mockSharingFcns->getTexture2dDescSetParams = true;
|
mockSharingFcns->getTexture2dDescSetParams = true;
|
||||||
mockSharingFcns->getTexture2dDescParamsSet.textureDesc = mockSharingFcns->mockTexture2dDesc;
|
mockSharingFcns->getTexture2dDescParamsSet.textureDesc = mockSharingFcns->mockTexture2dDesc;
|
||||||
|
Reference in New Issue
Block a user