From b9303b880531c9fd75386432c5db59cbfddc724d Mon Sep 17 00:00:00 2001 From: Benoit Bolsee Date: Sat, 11 Oct 2014 12:14:02 +0200 Subject: Fix another crash with Navigation mesh. Navigation mesh object need to access the current scene at creation time. This can be at scene start or when an object is instantiated from an inactive layer. The method of getting the scene differs in these cases. This fix handles both. --- source/gameengine/Ketsji/KX_GameObject.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source') diff --git a/source/gameengine/Ketsji/KX_GameObject.cpp b/source/gameengine/Ketsji/KX_GameObject.cpp index c681e0842c4..dc246406a88 100644 --- a/source/gameengine/Ketsji/KX_GameObject.cpp +++ b/source/gameengine/Ketsji/KX_GameObject.cpp @@ -1587,9 +1587,10 @@ CListValue* KX_GameObject::GetChildrenRecursive() KX_Scene* KX_GameObject::GetScene() { SG_Node* node = this->GetSGNode(); - KX_Scene* scene = static_cast(node->GetSGClientInfo()); - - return scene; + if (node == NULL) + // this happens for object in non active layers, rely on static scene then + return KX_GetActiveScene(); + return static_cast(node->GetSGClientInfo()); } /* --------------------------------------------------------------------- -- cgit v1.2.3