1
0
Fork 0

don't abort() only because one model wasn't found. Just print an error

message and continue.
This commit is contained in:
mfranz 2006-03-20 16:00:26 +00:00
parent dfc79a8035
commit d1e247beb0

View file

@ -15,6 +15,7 @@
#include <simgear/scene/model/placement.hxx>
#include <simgear/scene/model/model.hxx>
#include <simgear/structure/exception.hxx>
#include <Main/fg_props.hxx>
#include <Scenery/scenery.hxx>
@ -45,15 +46,20 @@ FGModelMgr::init ()
vector<SGPropertyNode_ptr> model_nodes =
fgGetNode("/models", true)->getChildren("model");
for (unsigned int i = 0; i < model_nodes.size(); i++)
add_model(model_nodes[i]);
for (unsigned int i = 0; i < model_nodes.size(); i++) {
try {
add_model(model_nodes[i]);
} catch (const sg_throwable& t) {
SG_LOG(SG_GENERAL, SG_ALERT, t.getFormattedMessage() << t.getOrigin());
}
}
}
void
FGModelMgr::add_model (SGPropertyNode * node)
{
SG_LOG(SG_GENERAL, SG_INFO,
"Adding model " << node->getStringValue("name", "[unnamed]"));
"Adding model " << node->getStringValue("name", "[unnamed]"));
Instance * instance = new Instance;
SGModelPlacement *model = new SGModelPlacement;
instance->model = model;