Fix T101262: Crash in spreadsheet selection filter with empty domain

The BMesh selection virtual array was empty. There are a few different
places we could add an "empty" check here, but at the top of the
function is the simplest for now.
This commit is contained in:
Hans Goudey 2022-09-21 17:34:30 -05:00
parent 77dcfac8a3
commit 20dc839319
Notes: blender-bot 2023-02-14 08:29:54 +01:00
Referenced by issue #100749, Blender LTS: Maintenance Task 3.3
Referenced by issue #101786, Spreadsheet crash when entering edit mode on a GN attached objects.
Referenced by issue #101259, Geometry Nodes in searching pulls nodes from other node add-ons
Referenced by issue #101262, Segfault entering Edit mode while Spreadsheet Open
1 changed files with 3 additions and 0 deletions

View File

@ -271,6 +271,9 @@ IndexMask GeometryDataSource::apply_selection_filter(Vector<int64_t> &indices) c
{
std::lock_guard lock{mutex_};
const IndexMask full_range(this->tot_rows());
if (full_range.is_empty()) {
return full_range;
}
switch (component_->type()) {
case GEO_COMPONENT_TYPE_MESH: {