X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FSystems%2Fsystem_mgr.cxx;h=0ca9efb7a1b0eca305ab0b23372ddb56762231d9;hb=4c7fb6c91bbf17119407748d4d49d627748ad037;hp=682293ef67c00504c72be5f4adc61e1ba2fdf691;hpb=00ba5a853ee82aeda934afd174da866551e4de70;p=flightgear.git diff --git a/src/Systems/system_mgr.cxx b/src/Systems/system_mgr.cxx index 682293ef6..0ca9efb7a 100644 --- a/src/Systems/system_mgr.cxx +++ b/src/Systems/system_mgr.cxx @@ -10,6 +10,7 @@ #include #include #include +#include #include
#include
@@ -28,20 +29,19 @@ FGSystemMgr::FGSystemMgr () { - config_props = new SGPropertyNode; + SGPropertyNode_ptr config_props = new SGPropertyNode; SGPropertyNode *path_n = fgGetNode("/sim/systems/path"); if (path_n) { - SGPath config( globals->get_fg_root() ); - config.append( path_n->getStringValue() ); + SGPath config = globals->resolve_aircraft_path(path_n->getStringValue()); SG_LOG( SG_ALL, SG_INFO, "Reading systems from " << config.str() ); try { readProperties( config.str(), config_props ); - if ( build() ) { + if ( build(config_props) ) { enabled = true; } else { SG_LOG( SG_ALL, SG_ALERT, @@ -52,7 +52,7 @@ FGSystemMgr::FGSystemMgr () " details."); exit(-1); } - } catch (const sg_exception& exc) { + } catch (const sg_exception&) { SG_LOG( SG_ALL, SG_ALERT, "Failed to load systems system model: " << config.str() ); } @@ -62,14 +62,13 @@ FGSystemMgr::FGSystemMgr () "No systems model specified for this model!"); } - delete config_props; } FGSystemMgr::~FGSystemMgr () { } -bool FGSystemMgr::build () +bool FGSystemMgr::build (SGPropertyNode* config_props) { SGPropertyNode *node; int i;