From f00553d399d44346d137d80e76aae77f87be2c41 Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Fri, 8 Dec 2023 13:40:16 +0100 Subject: [PATCH] Avoid crash for summary file with no time steps Do not try to create ESMRY file if there are no time steps in the summary data Do not try to read "TIME" record if no time steps are present --- .../FileInterface/RifOpmCommonSummary.cpp | 24 +++++++++++++----- .../empty-file/BLASTO_PRED-19.SMSPEC | Bin 0 -> 1236048 bytes .../empty-file/BLASTO_PRED-19.UNSMRY | Bin 0 -> 36 bytes .../UnitTests/opm-summary-Test.cpp | 15 +++++++++++ 4 files changed, 32 insertions(+), 7 deletions(-) create mode 100644 ApplicationLibCode/UnitTests/TestData/SummaryData/empty-file/BLASTO_PRED-19.SMSPEC create mode 100644 ApplicationLibCode/UnitTests/TestData/SummaryData/empty-file/BLASTO_PRED-19.UNSMRY diff --git a/ApplicationLibCode/FileInterface/RifOpmCommonSummary.cpp b/ApplicationLibCode/FileInterface/RifOpmCommonSummary.cpp index 4c8227c1aa..6b411262b9 100644 --- a/ApplicationLibCode/FileInterface/RifOpmCommonSummary.cpp +++ b/ApplicationLibCode/FileInterface/RifOpmCommonSummary.cpp @@ -111,7 +111,10 @@ bool RifOpmCommonEclipseSummary::open( const QString& fileName, bool includeRest { auto temporarySummaryFile = std::make_unique( smspecFileName.toStdString(), includeRestartFiles ); - temporarySummaryFile->make_esmry_file(); + if ( temporarySummaryFile->numberOfTimeSteps() > 0 ) + { + temporarySummaryFile->make_esmry_file(); + } RifOpmCommonEclipseSummary::increaseEsmryFileCount(); } @@ -214,15 +217,22 @@ void RifOpmCommonEclipseSummary::buildMetaData() if ( m_enhancedReader ) { - keywords = m_enhancedReader->keywordList(); - startOfSimulation = m_enhancedReader->startdate(); - daysSinceStartOfSimulation = m_enhancedReader->get( "TIME" ); + keywords = m_enhancedReader->keywordList(); + startOfSimulation = m_enhancedReader->startdate(); + + if ( m_enhancedReader->numberOfTimeSteps() > 0 ) + { + daysSinceStartOfSimulation = m_enhancedReader->get( "TIME" ); + } } else if ( m_standardReader ) { - keywords = m_standardReader->keywordList(); - startOfSimulation = m_standardReader->startdate(); - daysSinceStartOfSimulation = m_standardReader->get( "TIME" ); + keywords = m_standardReader->keywordList(); + startOfSimulation = m_standardReader->startdate(); + if ( m_standardReader->numberOfTimeSteps() > 0 ) + { + daysSinceStartOfSimulation = m_standardReader->get( "TIME" ); + } } const auto startAsTimeT = std::chrono::system_clock::to_time_t( startOfSimulation ); diff --git a/ApplicationLibCode/UnitTests/TestData/SummaryData/empty-file/BLASTO_PRED-19.SMSPEC b/ApplicationLibCode/UnitTests/TestData/SummaryData/empty-file/BLASTO_PRED-19.SMSPEC new file mode 100644 index 0000000000000000000000000000000000000000..5e7d5ef53b360da0f7b8327baebbe1a2beb4e2c7 GIT binary patch literal 1236048 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 hf3ACc(ml? +#include static const QString H5_TEST_DATA_DIRECTORY = QString( "%1/h5-file/" ).arg( TEST_DATA_DIR ); @@ -295,6 +296,20 @@ TEST( OpmSummaryTests, OpmComputeSegmentTopology ) } } +TEST( OpmSummaryTests, OpenEmptySummaryFile ) +{ + QString SUMMARY_TEST_DATA_DIRECTORY = QString( "%1/SummaryData/empty-file/" ).arg( TEST_DATA_DIR ); + QString rootPath = SUMMARY_TEST_DATA_DIRECTORY + "BLASTO_PRED-19"; + QString smspecFilePath = rootPath + ".SMSPEC"; + + Opm::EclIO::ESmry eSmry( smspecFilePath.toStdString() ); + + // Test to verify that is is possible to read an empty summary file + // eSmry.make_esmry_file() will fail if the summary file is empty + + EXPECT_TRUE( eSmry.numberOfTimeSteps() == 0 ); +} + //-------------------------------------------------------------------------------------------------- /// //--------------------------------------------------------------------------------------------------