Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2017-04-13 06:30:53 +0300
committerCampbell Barton <ideasman42@gmail.com>2017-04-13 06:37:27 +0300
commit64660b902c3fb52fe5a3cb5bf232f90283db8732 (patch)
treec9549b247ca35e92c3f03db4f07d95aaede60e48 /source/blender/draw/modes/edit_mesh_mode.c
parentc080702e73f1729897033343d44198488b6fed9f (diff)
Use 'safe' macros for common free operation
Same as MEM_SAFE_FREE macro, checks for NULL, runs free then sets NULL. Blocks of code that do this many times are noisy and likely errors here wouldn't be noticed immediately. Also NULL's static vars which were being left set.
Diffstat (limited to 'source/blender/draw/modes/edit_mesh_mode.c')
-rw-r--r--source/blender/draw/modes/edit_mesh_mode.c36
1 files changed, 12 insertions, 24 deletions
diff --git a/source/blender/draw/modes/edit_mesh_mode.c b/source/blender/draw/modes/edit_mesh_mode.c
index 08a6a6e778b..46a3e8e2e4e 100644
--- a/source/blender/draw/modes/edit_mesh_mode.c
+++ b/source/blender/draw/modes/edit_mesh_mode.c
@@ -499,30 +499,18 @@ void EDIT_MESH_collection_settings_create(IDProperty *properties)
static void EDIT_MESH_engine_free(void)
{
- if (e_data.overlay_tri_sh)
- DRW_shader_free(e_data.overlay_tri_sh);
- if (e_data.overlay_tri_fast_sh)
- DRW_shader_free(e_data.overlay_tri_fast_sh);
- if (e_data.overlay_tri_vcol_sh)
- DRW_shader_free(e_data.overlay_tri_vcol_sh);
- if (e_data.overlay_tri_vcol_fast_sh)
- DRW_shader_free(e_data.overlay_tri_vcol_fast_sh);
- if (e_data.overlay_edge_sh)
- DRW_shader_free(e_data.overlay_edge_sh);
- if (e_data.overlay_edge_vcol_sh)
- DRW_shader_free(e_data.overlay_edge_vcol_sh);
- if (e_data.overlay_vert_sh)
- DRW_shader_free(e_data.overlay_vert_sh);
- if (e_data.overlay_facedot_sh)
- DRW_shader_free(e_data.overlay_facedot_sh);
- if (e_data.overlay_mix_sh)
- DRW_shader_free(e_data.overlay_mix_sh);
- if (e_data.overlay_facefill_sh)
- DRW_shader_free(e_data.overlay_facefill_sh);
- if (e_data.normals_face_sh)
- DRW_shader_free(e_data.normals_face_sh);
- if (e_data.normals_sh)
- DRW_shader_free(e_data.normals_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_tri_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_tri_fast_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_tri_vcol_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_tri_vcol_fast_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_edge_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_edge_vcol_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_vert_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_facedot_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_mix_sh);
+ DRW_SHADER_FREE_SAFE(e_data.overlay_facefill_sh);
+ DRW_SHADER_FREE_SAFE(e_data.normals_face_sh);
+ DRW_SHADER_FREE_SAFE(e_data.normals_sh);
}
static const DrawEngineDataSize EDIT_MESH_data_size = DRW_VIEWPORT_DATA_SIZE(EDIT_MESH_Data);