Skip to content

Commit ed109e2

Browse files
committed
ITS: add extra protection if no tracklets were produced in ROF
Signed-off-by: Felix Schlepper <felix.schlepper@cern.ch>
1 parent ccd8f0c commit ed109e2

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

Detectors/ITSMFT/ITS/tracking/include/ITStracking/TimeFrame.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -593,7 +593,7 @@ inline gsl::span<int> TimeFrame<nLayers>::getExclusiveNTrackletsCluster(int rofI
593593
template <int nLayers>
594594
inline gsl::span<Tracklet> TimeFrame<nLayers>::getFoundTracklets(int rofId, int combId)
595595
{
596-
if (rofId < 0 || rofId >= mNrof) {
596+
if (rofId < 0 || rofId >= mNrof || mTracklets[combId].empty()) {
597597
return {};
598598
}
599599
auto startIdx{mNTrackletsPerROF[combId][rofId]};

Detectors/ITSMFT/ITS/tracking/src/VertexerTraits.cxx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,9 @@ void VertexerTraits::computeTrackletMatching(const int iteration)
326326
if (iteration && (int)mTimeFrame->getPrimaryVertices(pivotRofId).size() > mVrtParams[iteration].vertPerRofThreshold) {
327327
continue;
328328
}
329+
if (mTimeFrame->getFoundTracklets(pivotRofId, 0).empty()) {
330+
continue;
331+
}
329332
mTimeFrame->getLines(pivotRofId).reserve(mTimeFrame->getNTrackletsCluster(pivotRofId, 0).size());
330333
bounded_vector<uint8_t> usedTracklets(mTimeFrame->getFoundTracklets(pivotRofId, 0).size(), false, mMemoryPool.get());
331334
short startROF{std::max((short)0, static_cast<short>(pivotRofId - mVrtParams[iteration].deltaRof))};

0 commit comments

Comments
 (0)