From 7721886eadffc3eb07ac2d8c19cf5f4d12cb3f1c Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 18 Dec 2018 13:56:26 +1100 Subject: Fix T53544: Crash drawing scene w/o world --- source/blender/editors/space_view3d/view3d_utils.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'source/blender/editors/space_view3d') diff --git a/source/blender/editors/space_view3d/view3d_utils.c b/source/blender/editors/space_view3d/view3d_utils.c index 87f2e6b32d4..540806d4b67 100644 --- a/source/blender/editors/space_view3d/view3d_utils.c +++ b/source/blender/editors/space_view3d/view3d_utils.c @@ -77,18 +77,18 @@ void ED_view3d_background_color_get(const Scene *scene, const View3D *v3d, float r_color[3]) { - switch (v3d->shading.background_type) { - case V3D_SHADING_BACKGROUND_WORLD: + if (v3d->shading.background_type == V3D_SHADING_BACKGROUND_WORLD) { + if (scene->world) { copy_v3_v3(r_color, &scene->world->horr); - break; - case V3D_SHADING_BACKGROUND_VIEWPORT: - copy_v3_v3(r_color, v3d->shading.background_color); - break; - case V3D_SHADING_BACKGROUND_THEME: - default: - UI_GetThemeColor3fv(TH_HIGH_GRAD, r_color); - break; + return; + } } + else if (v3d->shading.background_type == V3D_SHADING_BACKGROUND_VIEWPORT) { + copy_v3_v3(r_color, v3d->shading.background_color); + return; + } + + UI_GetThemeColor3fv(TH_HIGH_GRAD, r_color); } void ED_view3d_cursor3d_calc_mat3(const Scene *scene, float mat[3][3]) -- cgit v1.2.3