From f596fd2b98f710b14af9bb53051524efd46e35ae Mon Sep 17 00:00:00 2001 From: Tim Adye Date: Wed, 14 Jun 2023 18:37:46 +0100 Subject: [PATCH] restore OutOfBounds check. assert if neighbors array not fully filled. --- Core/include/Acts/MagneticField/InterpolatedBFieldMap.hpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Core/include/Acts/MagneticField/InterpolatedBFieldMap.hpp b/Core/include/Acts/MagneticField/InterpolatedBFieldMap.hpp index 28f64f8ebff..3e18a1da061 100644 --- a/Core/include/Acts/MagneticField/InterpolatedBFieldMap.hpp +++ b/Core/include/Acts/MagneticField/InterpolatedBFieldMap.hpp @@ -202,11 +202,17 @@ class InterpolatedBFieldMap : public InterpolatedMagneticField { std::array neighbors; const auto& cornerIndices = m_cfg.grid.closestPointsIndices(gridPosition); + if (!isInsideLocal(gridPosition)) { + return MagneticFieldError::OutOfBounds; + } + size_t i = 0; for (size_t index : cornerIndices) { neighbors.at(i++) = m_cfg.transformBField(m_cfg.grid.at(index), position); } + assert(i == nCorners); + return FieldCell(lowerLeft, upperRight, std::move(neighbors)); }