Code indexing in gitaly is broken and leads to code not being visible to the user. We work on the issue with highest priority.

Skip to content
Snippets Groups Projects
Commit 97d1e56c authored by adelmann's avatar adelmann :reminder_ribbon:
Browse files

illeal memory access when delete OpalData

parent 4a65c759
No related branches found
No related tags found
No related merge requests found
...@@ -258,7 +258,7 @@ public: ...@@ -258,7 +258,7 @@ public:
private: private:
static bool isInstantiated; static bool isInstantiated;
static OpalData* instance; static OpalData* instance; // \todo should be a smart pointer and we then should get ridd of deleteInstance
static std::stack<OpalData*> stashedInstances; static std::stack<OpalData*> stashedInstances;
OpalData(); OpalData();
......
...@@ -176,7 +176,8 @@ int main(int argc, char* argv[]) { ...@@ -176,7 +176,8 @@ int main(int argc, char* argv[]) {
if (is) { if (is) {
*gmsg << "Reading startup file '" << startup << "'" << endl; *gmsg << "Reading startup file '" << startup << "'" << endl;
parser.run(is); parser.
run(is);
*gmsg << "Finished reading startup file." << endl; *gmsg << "Finished reading startup file." << endl;
} }
FileStream::setEcho(Options::echo); FileStream::setEcho(Options::echo);
...@@ -379,7 +380,9 @@ int main(int argc, char* argv[]) { ...@@ -379,7 +380,9 @@ int main(int argc, char* argv[]) {
} catch (EarlyLeaveException& ex) { } catch (EarlyLeaveException& ex) {
// do nothing here // do nothing here
} catch (OpalException& ex) { }
catch (OpalException& ex) {
Inform errorMsg("Error", std::cerr, INFORM_ALL_NODES); Inform errorMsg("Error", std::cerr, INFORM_ALL_NODES);
errorMsg << "\n*** User error detected by function \"" << ex.where() << "\"\n"; errorMsg << "\n*** User error detected by function \"" << ex.where() << "\"\n";
// stat->printWhere(errorMsg, true); // stat->printWhere(errorMsg, true);
...@@ -489,10 +492,14 @@ int main(int argc, char* argv[]) { ...@@ -489,10 +492,14 @@ int main(int argc, char* argv[]) {
IpplTimings::print( IpplTimings::print(
std::string("timing.dat"), OpalData::getInstance()->getProblemCharacteristicValues()); std::string("timing.dat"), OpalData::getInstance()->getProblemCharacteristicValues());
ippl::Comm->barrier(); ippl::Comm->barrier();
Fieldmap::clearDictionary(); Fieldmap::clearDictionary();
OpalData::deleteInstance();
// \todo we should not need this OpalData::deleteInstance();
delete gmsg; delete gmsg;
ippl::finalize();
return 0; return 0;
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment