don't crash when a panel (or one of its elements) can't be found (-> pc7)
This commit is contained in:
parent
66b6fa0001
commit
880e4908ac
1 changed files with 6 additions and 1 deletions
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue