@@ -1234,7 +1234,13 @@ bool l1t::TriggerMenuParser::parseMuon(L1TUtmCondition condMu, unsigned int chip
12341234
12351235 case esCutType::Eta: {
12361236 if (etaWindows.size () < 5 ) {
1237- etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
1237+ if ((cut.getMinimum ().index <= cut.getMaximum ().index ) ^
1238+ ((cut.getMinimum ().index <= 255 ) ^ (cut.getMaximum ().index <= 255 ))) {
1239+ etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
1240+ } else {
1241+ edm::LogError (" TriggerMenuParser" )
1242+ << " Invalid Eta Window for muon-condition (" << name << " )" << std::endl;
1243+ }
12381244 } else {
12391245 edm::LogError (" TriggerMenuParser" )
12401246 << " Too Many Eta Cuts for muon-condition (" << particle << " )" << std::endl;
@@ -1465,7 +1471,12 @@ bool l1t::TriggerMenuParser::parseMuonCorr(const L1TUtmObject* corrMu, unsigned
14651471
14661472 case esCutType::Eta: {
14671473 if (etaWindows.size () < 5 ) {
1468- etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
1474+ if ((cut.getMinimum ().index <= cut.getMaximum ().index ) ^
1475+ ((cut.getMinimum ().index <= 255 ) ^ (cut.getMaximum ().index <= 255 ))) {
1476+ etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
1477+ } else {
1478+ edm::LogError (" TriggerMenuParser" ) << " Invalid Eta Window for muon-condition (" << name << " )" << std::endl;
1479+ }
14691480 } else {
14701481 edm::LogError (" TriggerMenuParser" )
14711482 << " Too Many Eta Cuts for muon-condition (" << particle << " )" << std::endl;
@@ -1838,7 +1849,13 @@ bool l1t::TriggerMenuParser::parseCalo(L1TUtmCondition condCalo, unsigned int ch
18381849 break ;
18391850 case esCutType::Eta: {
18401851 if (etaWindows.size () < 5 ) {
1841- etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
1852+ if ((cut.getMinimum ().index <= cut.getMaximum ().index ) ^
1853+ ((cut.getMinimum ().index <= 127 ) ^ (cut.getMaximum ().index <= 127 ))) {
1854+ etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
1855+ } else {
1856+ edm::LogError (" TriggerMenuParser" )
1857+ << " Invalid Eta Window for calo-conditioni (" << name << " )" << std::endl;
1858+ }
18421859 } else {
18431860 edm::LogError (" TriggerMenuParser" )
18441861 << " Too Many Eta Cuts for calo-condition (" << particle << " )" << std::endl;
@@ -2065,7 +2082,12 @@ bool l1t::TriggerMenuParser::parseCaloCorr(const L1TUtmObject* corrCalo, unsigne
20652082 break ;
20662083 case esCutType::Eta: {
20672084 if (etaWindows.size () < 5 ) {
2068- etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
2085+ if ((cut.getMinimum ().index <= cut.getMaximum ().index ) ^
2086+ ((cut.getMinimum ().index <= 127 ) ^ (cut.getMaximum ().index <= 127 ))) {
2087+ etaWindows.push_back ({cut.getMinimum ().index , cut.getMaximum ().index });
2088+ } else {
2089+ edm::LogError (" TriggerMenuParser" ) << " Invalid Eta Window for calo-condition (" << name << " )" << std::endl;
2090+ }
20692091 } else {
20702092 edm::LogError (" TriggerMenuParser" )
20712093 << " Too Many Eta Cuts for calo-condition (" << particle << " )" << std::endl;
0 commit comments