diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/Concurrent.cpp | 5 | ||||
-rw-r--r-- | test/DriverTestHelpers.hpp | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/test/Concurrent.cpp b/test/Concurrent.cpp index 4113a8da..71119cde 100644 --- a/test/Concurrent.cpp +++ b/test/Concurrent.cpp @@ -82,15 +82,16 @@ DOCTEST_TEST_CASE("ConcurrentExecute") // build the requests V1_0::Request requests[maxRequests]; + android::sp<IMemory> inMemory[maxRequests]; android::sp<IMemory> outMemory[maxRequests]; + float indata[] = {2, 32, 16}; float* outdata[maxRequests]; for (size_t i = 0; i < maxRequests; ++i) { requests[i].inputs = hidl_vec<RequestArgument>{input}; requests[i].outputs = hidl_vec<RequestArgument>{output}; // set the input data (matching source test) - float indata[] = {2, 32, 16}; - AddPoolAndSetData<float>(3, requests[i], indata); + inMemory[i] = AddPoolAndSetData<float>(3, requests[i], indata); // add memory for the output outMemory[i] = AddPoolAndGetData<float>(1, requests[i]); outdata[i] = static_cast<float*>(static_cast<void*>(outMemory[i]->getPointer())); diff --git a/test/DriverTestHelpers.hpp b/test/DriverTestHelpers.hpp index 383c8fc2..98be0903 100644 --- a/test/DriverTestHelpers.hpp +++ b/test/DriverTestHelpers.hpp @@ -186,13 +186,15 @@ android::sp<IMemory> AddPoolAndGetData(uint32_t size, V1_0::Request& request) } template<typename T> -void AddPoolAndSetData(uint32_t size, V1_0::Request& request, const T* data) +android::sp<IMemory> AddPoolAndSetData(uint32_t size, V1_0::Request& request, const T* data) { android::sp<IMemory> memory = AddPoolAndGetData<T>(size, request); T* dst = static_cast<T*>(static_cast<void*>(memory->getPointer())); memcpy(dst, data, size * sizeof(T)); + + return memory; } template<typename HalPolicy, |