diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-11-22 18:55:23 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-11-22 18:55:29 +0300 |
commit | e16ef56a0dd02f882adaca1f7ea52cc2b02469f8 (patch) | |
tree | 4961f5f571cfe7ac46d66c00083bc9bc9618778c /source/blender | |
parent | ce6d1e890c7b829c59d1af3b22a18238d51f0735 (diff) |
Fix T57980: Assert failure in draw manager when opening file
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/draw/modes/overlay_mode.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/source/blender/draw/modes/overlay_mode.c b/source/blender/draw/modes/overlay_mode.c index cb80b1f2a61..2409d4033e0 100644 --- a/source/blender/draw/modes/overlay_mode.c +++ b/source/blender/draw/modes/overlay_mode.c @@ -279,11 +279,13 @@ static void overlay_cache_populate(void *vedata, Object *ob) else if (is_flat_object_viewed_from_side) { /* Avoid losing flat objects when in ortho views (see T56549) */ struct GPUBatch *geom = DRW_cache_object_wire_outline_get(ob); - GPUShader *sh = GPU_shader_get_builtin_shader(GPU_SHADER_3D_UNIFORM_COLOR); - shgrp = DRW_shgroup_create(sh, psl->flat_wireframe_pass); - DRW_shgroup_stencil_mask(shgrp, stencil_mask); - DRW_shgroup_uniform_vec4(shgrp, "color", ts.colorWire, 1); - DRW_shgroup_call_object_add(shgrp, geom, ob); + if (geom) { + GPUShader *sh = GPU_shader_get_builtin_shader(GPU_SHADER_3D_UNIFORM_COLOR); + shgrp = DRW_shgroup_create(sh, psl->flat_wireframe_pass); + DRW_shgroup_stencil_mask(shgrp, stencil_mask); + DRW_shgroup_uniform_vec4(shgrp, "color", ts.colorWire, 1); + DRW_shgroup_call_object_add(shgrp, geom, ob); + } } else { int tri_count; |