Thermal Fracture: Fix off-by-one in properties parsing.

Would leave out the last element from the file (i.e LeakoffPressureDrop).
This commit is contained in:
Kristian Bendiksen
2022-09-09 08:17:58 +02:00
parent 550110d8ab
commit 2fea355cd2

View File

@@ -50,11 +50,15 @@ std::pair<std::shared_ptr<RigThermalFractureDefinition>, QString>
auto appendPropertyValues = [definition]( int nodeIndex, int valueOffset, const QStringList& values ) {
CAF_ASSERT( valueOffset <= values.size() );
for ( int i = valueOffset; i < values.size() - 1; i++ )
for ( int i = valueOffset; i < values.size(); i++ )
{
double value = values[i].toDouble();
int propertyIndex = i - valueOffset;
definition->appendPropertyValue( propertyIndex, nodeIndex, value );
bool isOk = false;
double value = values[i].toDouble( &isOk );
if ( isOk )
{
int propertyIndex = i - valueOffset;
definition->appendPropertyValue( propertyIndex, nodeIndex, value );
}
}
};
@@ -80,7 +84,7 @@ std::pair<std::shared_ptr<RigThermalFractureDefinition>, QString>
if ( isFirstHeader )
{
// Create the result vector when encountering the first header
for ( int i = valueOffset; i < headerValues.size() - 1; i++ )
for ( int i = valueOffset; i < headerValues.size(); i++ )
{
auto [name, unit] = parseNameAndUnit( headerValues[i] );
if ( !name.isEmpty() && !unit.isEmpty() ) definition->addProperty( name, unit );