#5533 Derived summary case: Avoid crash if no data is present

This commit is contained in:
Magne Sjaastad 2020-02-12 14:24:23 +01:00
parent c82df63e10
commit a3e3601d08
2 changed files with 16 additions and 0 deletions

View File

@ -130,6 +130,11 @@ void RiaTimeHistoryCurveResampler::computeWeightedMeanValues( DateTimePeriod per
const auto& origTimeSteps = m_originalValues.second;
const auto& origValues = m_originalValues.first;
if ( origValues.empty() || origTimeSteps.empty() )
{
return;
}
computeResampledTimeSteps( period );
m_values.reserve( m_timeSteps.size() );
@ -198,6 +203,11 @@ void RiaTimeHistoryCurveResampler::computePeriodEndValues( DateTimePeriod period
const auto& origTimeSteps = m_originalValues.second;
const auto& origValues = m_originalValues.first;
if ( origValues.empty() || origTimeSteps.empty() )
{
return;
}
computeResampledTimeSteps( period );
m_values.reserve( m_timeSteps.size() );

View File

@ -159,6 +159,12 @@ double RimSimWellInViewTools::extractValueForTimeStep( RifSummaryReaderInterface
std::vector<double> values;
summaryReader->values( addr, &values );
std::vector<time_t> timeSteps = summaryReader->timeSteps( addr );
if ( values.empty() || timeSteps.empty() )
{
std::cerr << "Warning: no data found for well " << wellName.toStdString() << " " << vectorName << std::endl;
*isOk = false;
return 0.0;
}
RiaTimeHistoryCurveResampler resampler;
resampler.setCurveData( values, timeSteps );