IVGCVSW-4640 Fix HAL 1.3 build issues from update of AOSP master

Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I19dd23f938f571f3f63bb1e070d27d27cbe65c1a
diff --git a/ArmnnPreparedModel_1_3.cpp b/ArmnnPreparedModel_1_3.cpp
index 155f8b2..86c0494 100644
--- a/ArmnnPreparedModel_1_3.cpp
+++ b/ArmnnPreparedModel_1_3.cpp
@@ -234,6 +234,7 @@
         const V1_3::Request& request,
         MeasureTiming measureTiming,
         const V1_3::OptionalTimePoint&,
+        const V1_3::OptionalTimeoutDuration&,
         const sp<V1_3::IExecutionCallback>& callback)
 {
     if (callback.get() == nullptr)
@@ -259,6 +260,7 @@
                                                                MeasureTiming,
                                                                const OptionalTimePoint&,
                                                                const OptionalTimeoutDuration&,
+                                                               const OptionalTimeoutDuration&,
                                                                executeFenced_cb cb)
 {
     cb(ErrorStatus::DEVICE_UNAVAILABLE, hidl_handle(nullptr), nullptr);
@@ -449,10 +451,12 @@
 }
 
 template<typename HalVersion>
-Return<void>  ArmnnPreparedModel_1_3<HalVersion>::executeSynchronously_1_3(const V1_3::Request& request,
-                                                                           MeasureTiming measureTiming,
-                                                                           const V1_3::OptionalTimePoint& deadline,
-                                                                           executeSynchronously_1_3_cb cb)
+Return<void>  ArmnnPreparedModel_1_3<HalVersion>::executeSynchronously_1_3(
+        const V1_3::Request& request,
+        MeasureTiming measureTiming,
+        const V1_3::OptionalTimePoint& deadline,
+        const V1_3::OptionalTimeoutDuration& loopTimeoutDuration,
+        executeSynchronously_1_3_cb cb)
 {
     ALOGV("ArmnnPreparedModel_1_3::executeSynchronously_1_3(): %s", GetModelSummary(m_Model).c_str());
     m_RequestCount++;
@@ -470,6 +474,13 @@
         return Void();
     }
 
+    if (loopTimeoutDuration.getDiscriminator() != OptionalTimeoutDuration::hidl_discriminator::none)
+     {
+        ALOGE("ArmnnPreparedModel_1_3::executeSynchronously_1_3 invalid request model");
+        cb(V1_3::ErrorStatus::INVALID_ARGUMENT, {}, g_NoTiming);
+        return Void();
+    }
+
     auto cbWrapper = [cb](V1_3::ErrorStatus errorStatus,
                           std::vector<OutputShape> outputShapes,
                           const Timing& timing,