mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Avoid crash on opening of input eclipse case without grid and log error
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
#include "RicImportInputEclipseCaseFeature.h"
|
||||
|
||||
#include "RiaApplication.h"
|
||||
#include "RiaLogging.h"
|
||||
#include "RiaPorosityModel.h"
|
||||
|
||||
#include "RimEclipseCaseCollection.h"
|
||||
@@ -50,10 +51,15 @@ bool RicImportInputEclipseCaseFeature::openInputEclipseCaseFromFileNames(const Q
|
||||
|
||||
project->assignCaseIdToCase(rimInputReservoir);
|
||||
|
||||
rimInputReservoir->openDataFileSet(fileNames);
|
||||
bool gridImportSuccess = rimInputReservoir->openDataFileSet(fileNames);
|
||||
if (!gridImportSuccess)
|
||||
{
|
||||
RiaLogging::error("Failed to import grid");
|
||||
return false;
|
||||
}
|
||||
|
||||
RimEclipseCaseCollection* analysisModels = project->activeOilField() ? project->activeOilField()->analysisModels() : NULL;
|
||||
if (analysisModels == NULL) return false;
|
||||
RimEclipseCaseCollection* analysisModels = project->activeOilField() ? project->activeOilField()->analysisModels() : nullptr;
|
||||
if (analysisModels == nullptr) return false;
|
||||
|
||||
analysisModels->cases.push_back(rimInputReservoir);
|
||||
|
||||
|
@@ -83,7 +83,7 @@ RimEclipseInputCase::~RimEclipseInputCase()
|
||||
/// Open the supplied file set. If no grid data has been read, it will first find the possible
|
||||
/// grid data among the files then read all supported properties from the files matching the grid
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimEclipseInputCase::openDataFileSet(const QStringList& fileNames)
|
||||
bool RimEclipseInputCase::openDataFileSet(const QStringList& fileNames)
|
||||
{
|
||||
if (fileNames.contains(RiaDefines::mockModelBasicInputCase()))
|
||||
{
|
||||
@@ -100,7 +100,7 @@ void RimEclipseInputCase::openDataFileSet(const QStringList& fileNames)
|
||||
|
||||
computeCachedData();
|
||||
|
||||
return;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (this->eclipseCaseData() == NULL)
|
||||
@@ -135,7 +135,7 @@ void RimEclipseInputCase::openDataFileSet(const QStringList& fileNames)
|
||||
|
||||
if (this->eclipseCaseData()->mainGrid()->gridPointDimensions() == cvf::Vec3st(0,0,0))
|
||||
{
|
||||
return ; // No grid present
|
||||
return false; // No grid present
|
||||
}
|
||||
|
||||
std::vector<QString> filesToRead;
|
||||
@@ -171,6 +171,7 @@ void RimEclipseInputCase::openDataFileSet(const QStringList& fileNames)
|
||||
m_inputPropertyCollection->inputProperties.push_back(inputProperty);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
@@ -49,7 +49,7 @@ public:
|
||||
caf::PdmChildField<RimEclipseInputPropertyCollection*> m_inputPropertyCollection;
|
||||
|
||||
// File open methods
|
||||
void openDataFileSet(const QStringList& fileNames);
|
||||
bool openDataFileSet(const QStringList& fileNames);
|
||||
void loadAndSyncronizeInputProperties();
|
||||
|
||||
// RimCase overrides
|
||||
|
Reference in New Issue
Block a user