From 0a3850fde40aacf1320ee6af64ed53db67c0606c Mon Sep 17 00:00:00 2001 From: Sergey Sharybin <sergey.vfx@gmail.com> Date: Wed, 12 Mar 2014 14:07:26 +0600 Subject: [PATCH] Fix T39123: Border select without "extend" does nor clear selection of bezier nodes in 3D view This is a regression introduced in fbc7ab30f and caused by the wrong object being passed to the function. Not sure passing editnurb as an argument is a good thing to do.. --- source/blender/editors/space_view3d/view3d_select.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/source/blender/editors/space_view3d/view3d_select.c b/source/blender/editors/space_view3d/view3d_select.c index a44c116f195..9467eae930f 100644 --- a/source/blender/editors/space_view3d/view3d_select.c +++ b/source/blender/editors/space_view3d/view3d_select.c @@ -573,8 +573,10 @@ static void do_lasso_select_curve(ViewContext *vc, const int mcords[][2], short view3d_userdata_lassoselect_init(&data, vc, &rect, mcords, moves, select); - if (extend == false && select) - ED_curve_deselect_all(vc->obedit->data); + if (extend == false && select) { + Curve *curve = (Curve *) vc->obedit->data; + ED_curve_deselect_all(curve->editnurb); + } ED_view3d_init_mats_rv3d(vc->obedit, vc->rv3d); /* for foreach's screen/vert projection */ nurbs_foreachScreenVert(vc, do_lasso_select_curve__doSelect, &data, V3D_PROJ_TEST_CLIP_DEFAULT); @@ -1740,8 +1742,10 @@ static int do_nurbs_box_select(ViewContext *vc, rcti *rect, bool select, bool ex view3d_userdata_boxselect_init(&data, vc, rect, select); - if (extend == false && select) - ED_curve_deselect_all(vc->obedit->data); + if (extend == false && select) { + Curve *curve = (Curve *) vc->obedit->data; + ED_curve_deselect_all(curve->editnurb); + } ED_view3d_init_mats_rv3d(vc->obedit, vc->rv3d); /* for foreach's screen/vert projection */ nurbs_foreachScreenVert(vc, do_nurbs_box_select__doSelect, &data, V3D_PROJ_TEST_CLIP_DEFAULT); -- GitLab