Fix problems in thkWrapper and SharingHandler

- ThkWrapper had uninitialized mFunc member, setting it
to nullptr

- D3DSurface could dereference null image pointer,
adding validateUpdateData method in SharingHandler
that may return CL_INVALID_MEM_OBJECT if memObject is invalid

Change-Id: Iaa4499bcea47baca156c9d28be4c93ba4f0e1ebb
This commit is contained in:
Hoppe, Mateusz
2018-04-19 14:11:45 +02:00
parent 75d497a9a9
commit 83160213f0
12 changed files with 117 additions and 28 deletions

View File

@@ -30,7 +30,7 @@ using namespace OCLRT;
TEST(sharingHandler, givenBasicSharingHandlerWhenSynchronizeObjectThenErrorIsReturned) {
struct SH : SharingHandler {
void synchronizeHandlerMock(UpdateData *updateData) { return synchronizeHandler(updateData); }
int synchronizeHandlerMock(UpdateData *updateData) { return synchronizeHandler(updateData); }
} sharingHandler;
@@ -105,3 +105,13 @@ TEST(sharingHandler, givenMemObjWhenAcquireTwoTimesThenReleaseShouldBeCalledTwoT
EXPECT_EQ(sharingHandler.release(memObj.get()), 0u);
EXPECT_EQ(sharingHandler.releaseCount, 1);
}
TEST(sharingHandler, givenSharingHandlerWhenValidateUpdateDataIsCalledWithNonNullInputThenAbortIsNotCalled) {
class MockSharingHandler : SharingHandler {
public:
using SharingHandler::validateUpdateData;
};
MockSharingHandler sharingHandler;
UpdateData updateData;
sharingHandler.validateUpdateData(&updateData);
}