From 317d8e25b6fa16058ae1435a37209f57f742185a Mon Sep 17 00:00:00 2001 From: Konstantin Date: Sat, 6 Jul 2024 07:46:13 +0200 Subject: [PATCH] PATLeptonTimeLifeInfoProducer: do not throw exception if fit fails --- .../PatAlgos/plugins/PATLeptonTimeLifeInfoProducer.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/PhysicsTools/PatAlgos/plugins/PATLeptonTimeLifeInfoProducer.cc b/PhysicsTools/PatAlgos/plugins/PATLeptonTimeLifeInfoProducer.cc index 978aa180c3252..d8ccc96042dbc 100644 --- a/PhysicsTools/PatAlgos/plugins/PATLeptonTimeLifeInfoProducer.cc +++ b/PhysicsTools/PatAlgos/plugins/PATLeptonTimeLifeInfoProducer.cc @@ -53,9 +53,14 @@ class PATLeptonTimeLifeInfoProducer : public edm::stream::EDProducer<> { static bool fitVertex(const std::vector& transTrk, TransientVertex& transVtx) { if (transTrk.size() < 2) return false; - KalmanVertexFitter kvf(true); - transVtx = kvf.vertex(transTrk); - return transVtx.hasRefittedTracks() && transVtx.refittedTracks().size() == transTrk.size(); + try { + KalmanVertexFitter kvf(true); + transVtx = kvf.vertex(transTrk); + return transVtx.hasRefittedTracks() && transVtx.refittedTracks().size() == transTrk.size(); + } catch (VertexException& e) { + edm::LogWarning("PATLeptonTimeLifeInfoProducer") << " fitVertex failed: " << e.what(); + return false; + } } //--- configuration parameters