diff --git a/Engine/source/forest/forest.cpp b/Engine/source/forest/forest.cpp index 985f34151..dd675480a 100644 --- a/Engine/source/forest/forest.cpp +++ b/Engine/source/forest/forest.cpp @@ -260,7 +260,9 @@ void Forest::setTransform( const MatrixF &mat ) void Forest::_onZoningChanged( SceneZoneSpaceManager *zoneManager ) { - if ( mData == NULL || zoneManager != getSceneManager()->getZoneManager() ) + const SceneManager* sm = getSceneManager(); + + if (mData == NULL || (sm != NULL && sm->getZoneManager() != NULL && zoneManager != sm->getZoneManager())) return; mZoningDirty = true; diff --git a/Engine/source/terrain/terrData.cpp b/Engine/source/terrain/terrData.cpp index 7abfbc867..d097a197a 100644 --- a/Engine/source/terrain/terrData.cpp +++ b/Engine/source/terrain/terrData.cpp @@ -461,7 +461,9 @@ void TerrainBlock::_updateBounds() void TerrainBlock::_onZoningChanged( SceneZoneSpaceManager *zoneManager ) { - if ( mCell == NULL || zoneManager != getSceneManager()->getZoneManager() ) + const SceneManager* sm = getSceneManager(); + + if (mCell == NULL || (sm != NULL && sm->getZoneManager() != NULL && zoneManager != sm->getZoneManager())) return; mZoningDirty = true;