diff --git a/src/classes/PMsr2Data.cpp b/src/classes/PMsr2Data.cpp index a845e512..9a47eac1 100644 --- a/src/classes/PMsr2Data.cpp +++ b/src/classes/PMsr2Data.cpp @@ -213,11 +213,12 @@ int PMsr2Data::DetermineRunNumberDigits(unsigned int runNo, bool normalMode) con */ int PMsr2Data::CheckRunNumbersInRange() const { - double max(pow(static_cast(10), static_cast(fRunNumberDigits)) - 1.0); + // since 2023, we encounter in LEM run numbers > 9999, hence this check has been loosened + // by replacing static_cast(fRunNumberDigits)) by static_cast(fRunNumberDigits+1)). + double max(pow(static_cast(10), static_cast(fRunNumberDigits+1)) - 1.0); unsigned int max_UInt; max > static_cast(std::numeric_limits::max()) ? max_UInt = std::numeric_limits::max() : max_UInt = static_cast(max); - for (std::vector::const_iterator iter(fRunVector.begin()); iter != fRunVector.end(); ++iter) { if (*iter > max_UInt) { return -1;