1
0
Fork 0

Tweaks to how we load aircraft defaults and definition file to make things

more intuitive.  We switch to an include in the preferences.xml to include
the default model, and then if the user specifies --aircraft=, that is
expanded immediately so portions can be overwritten by subsequent command
line options.
This commit is contained in:
curt 2001-12-10 16:29:20 +00:00
parent 4cc5cee885
commit 5c0fa275d7
2 changed files with 14 additions and 15 deletions

View file

@ -269,20 +269,6 @@ bool fgInitConfig ( int argc, char **argv ) {
// These will override anything specified in a config file
fgParseOptions(argc, argv);
// read in the top level aircraft definition file
SGPath apath( globals->get_fg_root() );
apath.append( "Aircraft" );
apath.append( fgGetString("/sim/aircraft") );
apath.concat( "-set.xml" );
try {
readProperties(apath.str(), globals->get_props());
} catch (const sg_exception &e) {
string message = "Error loading aircraft file: ";
message += e.getFormattedMessage();
SG_LOG(SG_INPUT, SG_ALERT, message);
exit(2);
}
return true;
}

View file

@ -903,7 +903,20 @@ parse_option (const string& arg)
exit(2);
}
} else if ( arg.find( "--aircraft=" ) == 0 ) {
fgSetString("/sim/aircraft", arg.substr(11));
// read in the top level aircraft definition file
SGPath apath( globals->get_fg_root() );
apath.append( "Aircraft" );
apath.append( arg.substr(11) );
apath.concat( "-set.xml" );
try {
SGPropertyNode *sim = fgGetNode("/sim");
readProperties( apath.str(), sim );
} catch (const sg_exception &e) {
string message = "Error loading aircraft file: ";
message += e.getFormattedMessage();
SG_LOG(SG_INPUT, SG_ALERT, message);
exit(2);
}
} else {
SG_LOG( SG_GENERAL, SG_ALERT, "Unknown option '" << arg << "'" );
return FG_OPTIONS_ERROR;