[Bf-blender-cvs] [31f22426915] master: Fix T103520: Incorrect selection in paint mode operators

Hans Goudey noreply at git.blender.org
Thu Dec 29 16:59:21 CET 2022


Commit: 31f22426915947f09751af8b5b92a2484de42163
Author: Hans Goudey
Date:   Thu Dec 29 10:58:47 2022 -0500
Branches: master
https://developer.blender.org/rB31f22426915947f09751af8b5b92a2484de42163

Fix T103520: Incorrect selection in paint mode operators

Read the selection attribute on the proper domain using implicit
interpolation rather than just using its oiginal domain that might
not match the domain of the color attribute.

===================================================================

M	source/blender/editors/sculpt_paint/paint_vertex_color_ops.cc

===================================================================

diff --git a/source/blender/editors/sculpt_paint/paint_vertex_color_ops.cc b/source/blender/editors/sculpt_paint/paint_vertex_color_ops.cc
index bb8a298503c..49fbff114f1 100644
--- a/source/blender/editors/sculpt_paint/paint_vertex_color_ops.cc
+++ b/source/blender/editors/sculpt_paint/paint_vertex_color_ops.cc
@@ -161,13 +161,13 @@ static IndexMask get_selected_indices(const Mesh &mesh,
 
   if (mesh.editflag & ME_EDIT_PAINT_FACE_SEL) {
     const VArray<bool> selection = attributes.lookup_or_default<bool>(
-        ".select_poly", ATTR_DOMAIN_FACE, false);
+        ".select_poly", domain, false);
     return index_mask_ops::find_indices_from_virtual_array(
         selection.index_range(), selection, 4096, indices);
   }
   if (mesh.editflag & ME_EDIT_PAINT_VERT_SEL) {
     const VArray<bool> selection = attributes.lookup_or_default<bool>(
-        ".select_vert", ATTR_DOMAIN_POINT, false);
+        ".select_vert", domain, false);
     return index_mask_ops::find_indices_from_virtual_array(
         selection.index_range(), selection, 4096, indices);
   }



More information about the Bf-blender-cvs mailing list