diff options
Diffstat (limited to 'source/blender/draw/intern/draw_view_data.cc')
-rw-r--r-- | source/blender/draw/intern/draw_view_data.cc | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/source/blender/draw/intern/draw_view_data.cc b/source/blender/draw/intern/draw_view_data.cc index 55ebbf82c29..f7304737830 100644 --- a/source/blender/draw/intern/draw_view_data.cc +++ b/source/blender/draw/intern/draw_view_data.cc @@ -50,11 +50,6 @@ struct DRWViewData { Vector<ViewportEngineData *> enabled_engines; }; -/** - * Creates a view data with all possible engines type for this view. - * - * `engine_types` contains `DRWRegisteredDrawEngine`. - * */ DRWViewData *DRW_view_data_create(ListBase *engine_types) { DRWViewData *view_data = new DRWViewData(); @@ -120,6 +115,12 @@ static void draw_viewport_engines_data_clear(ViewportEngineData *data) MEM_SAFE_FREE(data->stl->storage[i]); } + if (data->instance_data) { + BLI_assert(engine_type->instance_free != nullptr); + engine_type->instance_free(data->instance_data); + data->instance_data = nullptr; + } + MEM_SAFE_FREE(data->fbl); MEM_SAFE_FREE(data->txl); MEM_SAFE_FREE(data->psl); |