diff options
author | Campbell Barton <ideasman42@gmail.com> | 2018-07-13 13:46:10 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2018-07-13 13:47:04 +0300 |
commit | f6367ecfb65502a1ec40c5e382800b2ac214a499 (patch) | |
tree | eac8dc6f62672accd03428f8a0841656d10e6282 /source/blender/windowmanager/intern/wm_operator_type.c | |
parent | 8ff3f7f6013f730f5325dbcbbfcb4e78fae19bbb (diff) |
Cleanup: operator type API, header
Diffstat (limited to 'source/blender/windowmanager/intern/wm_operator_type.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm_operator_type.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_operator_type.c b/source/blender/windowmanager/intern/wm_operator_type.c index 35efdb2c4a2..62b378e0866 100644 --- a/source/blender/windowmanager/intern/wm_operator_type.c +++ b/source/blender/windowmanager/intern/wm_operator_type.c @@ -199,6 +199,27 @@ void wm_operatortype_free(void) global_ops_hash = NULL; } +/** + * Remove memory of all previously executed tools. + */ +void WM_operatortype_last_properties_clear_all(void) +{ + GHashIterator iter; + + for (WM_operatortype_iter(&iter); + (!BLI_ghashIterator_done(&iter)); + (BLI_ghashIterator_step(&iter))) + { + wmOperatorType *ot = BLI_ghashIterator_getValue(&iter); + + if (ot->last_properties) { + IDP_FreeProperty(ot->last_properties); + MEM_freeN(ot->last_properties); + ot->last_properties = NULL; + } + } +} + /** \} */ /* -------------------------------------------------------------------- */ |