From 59bcc449834d69cc8e04d8cf2add01af06344b91 Mon Sep 17 00:00:00 2001 From: Anthony Geay Date: Wed, 2 Mar 2016 17:10:46 +0100 Subject: [PATCH] Bug correction EDF12462 (1) --- src/evalyfx_swig/test1.py | 1 + src/yacsloader/parsers.cxx | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/evalyfx_swig/test1.py b/src/evalyfx_swig/test1.py index e52a597ba..b7bf36423 100644 --- a/src/evalyfx_swig/test1.py +++ b/src/evalyfx_swig/test1.py @@ -24,6 +24,7 @@ fname="test1.xml" import evalyfx session=evalyfx.YACSEvalSession() session.launch() +buildScheme(fname) efx=evalyfx.YACSEvalYFX.BuildFromFile(fname) efx.setParallelizeStatus(False) inps=efx.getFreeInputPorts() diff --git a/src/yacsloader/parsers.cxx b/src/yacsloader/parsers.cxx index 513dd1efc..3b621890b 100644 --- a/src/yacsloader/parsers.cxx +++ b/src/yacsloader/parsers.cxx @@ -124,6 +124,8 @@ ENGINE::Proc* YACSLoader::load(const char * file) { if ( xmlParseDocument(saxContext) == -1 ) { + if(!currentProc) + throw Exception("Basic error during parsing."); YACS::ENGINE::Logger* logger = currentProc->getLogger("parser"); logger->fatal( saxContext->lastError.message, file, saxContext->input->line ); } @@ -132,6 +134,8 @@ ENGINE::Proc* YACSLoader::load(const char * file) } catch(Exception& e) { + if(!currentProc) + throw e; YACS::ENGINE::Logger* logger = currentProc->getLogger("parser"); logger->fatal(e.what(), file, saxContext->input->line); saxContext = 0; -- 2.39.2