From fe2b92d7893ea9d4bb4fabd68a30385a5260d80e Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Wed, 6 Nov 2019 16:01:08 +0100 Subject: Fix T55632: USE_DRAG_MULTINUM and USE_ALLSELECT not working well together 'is_copy' was not set correctly on all uiButMultiState (it was done once for uiHandleButtonData), resulting in 'delta' being used on some indices of the array and not others in `ui_selectcontext_apply`. Maniphest Tasks: T55632 Differential Revision: https://developer.blender.org/D6201 --- source/blender/editors/interface/interface_handlers.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c index e7d80306ecb..2d739899ae8 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -1086,6 +1086,9 @@ static void ui_multibut_add(uiHandleButtonData *data, uiBut *but) mbut_state = MEM_callocN(sizeof(*mbut_state), __func__); mbut_state->but = but; mbut_state->origvalue = ui_but_value_get(but); +# ifdef USE_ALLSELECT + mbut_state->select_others.is_copy = data->select_others.is_copy; +# endif BLI_linklist_prepend(&data->multi_data.mbuts, mbut_state); -- cgit v1.2.3