From 00cbc7f4241df77cece978090b1029f38b322a27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Lemaire?= Date: Tue, 29 Oct 2013 21:38:27 +0100 Subject: [PATCH] Fixed a problem with direct scenery access in C-API --- src/rendering/Scenery.cpp | 9 ++++++++- src/rendering/textures/tex_definition.c | 7 +++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/rendering/Scenery.cpp b/src/rendering/Scenery.cpp index e6eb76a..cc5ba94 100644 --- a/src/rendering/Scenery.cpp +++ b/src/rendering/Scenery.cpp @@ -233,7 +233,14 @@ void sceneryGetTerrain(TerrainDefinition* terrain) TerrainDefinition* sceneryGetTerrainDirect() { - return _main_scenery->getTerrain(); + if (_main_scenery) + { + return _main_scenery->getTerrain(); + } + else + { + return NULL; + } } void scenerySetTextures(TexturesDefinition* textures) diff --git a/src/rendering/textures/tex_definition.c b/src/rendering/textures/tex_definition.c index faf4e8f..9006604 100644 --- a/src/rendering/textures/tex_definition.c +++ b/src/rendering/textures/tex_definition.c @@ -71,8 +71,11 @@ static void _layerValidateDefinition(TexturesLayerDefinition* definition) /* Update zone height range */ TerrainDefinition* terrain = sceneryGetTerrainDirect(); - HeightInfo height_info = terrainGetHeightInfo(terrain); - zoneSetRelativeHeight(definition->terrain_zone, height_info.min_height, height_info.base_height, height_info.max_height); + if (terrain) + { + HeightInfo height_info = terrainGetHeightInfo(terrain); + zoneSetRelativeHeight(definition->terrain_zone, height_info.min_height, height_info.base_height, height_info.max_height); + } } static TexturesLayerDefinition* _layerCreateDefinition()