diff options
-rw-r--r-- | ArmnnPreparedModel_1_3.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/ArmnnPreparedModel_1_3.cpp b/ArmnnPreparedModel_1_3.cpp index ceeb3c48..1827d900 100644 --- a/ArmnnPreparedModel_1_3.cpp +++ b/ArmnnPreparedModel_1_3.cpp @@ -434,6 +434,21 @@ Return<void> ArmnnPreparedModel_1_3<HalVersion>::executeFenced(const V1_3::Reque auto fenceNativeHandle = fenceWaitFor[index].getNativeHandle(); if (!fenceNativeHandle) { + ALOGE("ArmnnPreparedModel_1_3::executeFenced null native handle."); + cb(V1_3::ErrorStatus::INVALID_ARGUMENT, hidl_handle(nullptr), nullptr); + return Void(); + } + + if (fenceNativeHandle->numFds != 1) + { + ALOGE("ArmnnPreparedModel_1_3::executeFenced invalid fenceHandle numFds."); + cb(V1_3::ErrorStatus::INVALID_ARGUMENT, hidl_handle(nullptr), nullptr); + return Void(); + } + + if (fenceNativeHandle->numInts != 0) + { + ALOGE("ArmnnPreparedModel_1_3::executeFenced invalid fenceHandle numInts."); cb(V1_3::ErrorStatus::INVALID_ARGUMENT, hidl_handle(nullptr), nullptr); return Void(); } |