From 8e02b0d5d4f9882c87f1e95fc5b185c384b57fb0 Mon Sep 17 00:00:00 2001 From: Martijn Versteegh Date: Fri, 20 May 2022 09:36:30 +0200 Subject: Cleanup: make functions for setting clone/stencil layer more consistent This was missing in rBf1beb3b3f60be45854285935d6bfcedf839b317c. Differential Revision: https://developer.blender.org/D14991 --- source/blender/blenkernel/intern/customdata.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'source/blender/blenkernel') diff --git a/source/blender/blenkernel/intern/customdata.cc b/source/blender/blenkernel/intern/customdata.cc index 623c3bb698c..ed11e5359ca 100644 --- a/source/blender/blenkernel/intern/customdata.cc +++ b/source/blender/blenkernel/intern/customdata.cc @@ -2599,18 +2599,24 @@ void CustomData_set_layer_render_index(CustomData *data, int type, int n) void CustomData_set_layer_clone_index(CustomData *data, int type, int n) { + const int layer_index = data->typemap[type]; + BLI_assert(customdata_typemap_is_valid(data)); + for (int i = 0; i < data->totlayer; i++) { if (data->layers[i].type == type) { - data->layers[i].active_clone = n - i; + data->layers[i].active_clone = n - layer_index; } } } void CustomData_set_layer_stencil_index(CustomData *data, int type, int n) { + const int layer_index = data->typemap[type]; + BLI_assert(customdata_typemap_is_valid(data)); + for (int i = 0; i < data->totlayer; i++) { if (data->layers[i].type == type) { - data->layers[i].active_mask = n - i; + data->layers[i].active_mask = n - layer_index; } } } -- cgit v1.2.3