1
0
Fork 0

don't crash when a panel (or one of its elements) can't be found (-> pc7)

This commit is contained in:
mfranz 2006-12-03 20:14:12 +00:00
parent 66b6fa0001
commit 880e4908ac

View file

@ -3,6 +3,8 @@
#endif
#include <simgear/compiler.h>
#include <simgear/structure/exception.hxx>
#include <vector>
#include <plib/sg.h>
@ -41,7 +43,10 @@ FGPanelNode::FGPanelNode(SGPropertyNode* props)
// Make an FGPanel object. But *don't* call init() or bind() on
// it -- those methods touch static state.
_panel = fgReadPanel(props->getStringValue("path"));
const char *path = props->getStringValue("path");
_panel = fgReadPanel(path);
if (!_panel)
throw sg_io_exception(string("Failed to load panel ") + path);
// Never mind. We *have* to call init to make sure the static
// state is initialized (it's not, if there aren't any 2D