From fdb27e2c8875fa2bb354557d5291894fcb7940b0 Mon Sep 17 00:00:00 2001 From: Finn Williams Date: Thu, 21 Oct 2021 13:27:37 +0100 Subject: IVGCVSW-6474 Fix calculation of BindingId vector size Signed-off-by: Finn Williams Change-Id: If128ed0a8ed2b9a0ed8001715133ba5a6c6d682c --- src/armnn/WorkingMemHandle.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/armnn/WorkingMemHandle.cpp b/src/armnn/WorkingMemHandle.cpp index 7dde67372f..e2ad52a772 100644 --- a/src/armnn/WorkingMemHandle.cpp +++ b/src/armnn/WorkingMemHandle.cpp @@ -27,7 +27,6 @@ WorkingMemHandle::WorkingMemHandle(NetworkId networkId, , m_WorkingMemDescriptorMap(workingMemDescriptorMap) , m_MemoryManagers(memoryManagers) , m_OwnedTensorHandles(std::move(ownedTensorHandles)) - , m_BindingIdVec(inputLayerInfo.size() + ouputLayerInfo.size()) , m_InputSize(numeric_cast(inputLayerInfo.size())) , m_IsAllocated(false) { @@ -54,7 +53,7 @@ WorkingMemHandle::WorkingMemHandle(NetworkId networkId, m_InputConnectionMap[inputInfo.m_LayerBindingId].push_back(inputPos); } } - + size_t bindingIdCount = inputLayerInfo.size(); for (const auto& outputInfo : ouputLayerInfo) { for (auto bindingId : outputInfo.m_LayerBindingIds) @@ -67,7 +66,7 @@ WorkingMemHandle::WorkingMemHandle(NetworkId networkId, m_OutputHandleMap[bindingId] = *outputPos; } - + bindingIdCount += outputInfo.m_LayerBindingIds.size(); // More than one layerBinding id means the tensorhandle is connected to more than one OutputLayer. // Importing in this case would likely cause unexpected behaviour, so we disallow it. if (outputInfo.m_LayerBindingIds.size() != 1) @@ -88,6 +87,7 @@ WorkingMemHandle::WorkingMemHandle(NetworkId networkId, m_OutputConnectionMap[outputInfo.m_LayerBindingIds[0]].push_back(inputPos); } } + m_BindingIdVec = std::vector(bindingIdCount); } void WorkingMemHandle::Allocate() -- cgit v1.2.1