1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-01 17:36:21 +03:00

[bos #42181] Fatal error in Fuse selection NCollection_DataMap::Find

This commit is contained in:
jfa 2024-06-14 13:32:10 +01:00 committed by mzernova
parent 5b574af01f
commit dff941292a

View File

@ -65,8 +65,11 @@ AIS_SelectStatus AIS_Selection::Select(const Handle(SelectMgr_EntityOwner)& theO
const Standard_Boolean wasSelected = theOwner->IsSelected();
const Standard_Boolean toSelect = theOwner->Select(theSelScheme, isDetected);
if (toSelect && !wasSelected)
if (!wasSelected || !myResultMap.IsBound(theOwner))
{
if (!toSelect)
return AIS_SS_NotDone;
AIS_NListOfEntityOwner::Iterator aListIter;
myresult.Append(theOwner, aListIter);
myResultMap.Bind(theOwner, aListIter);
@ -74,11 +77,6 @@ AIS_SelectStatus AIS_Selection::Select(const Handle(SelectMgr_EntityOwner)& theO
return AIS_SS_Added;
}
if (!toSelect && !wasSelected)
{
return AIS_SS_NotDone;
}
AIS_NListOfEntityOwner::Iterator aListIter = myResultMap.Find(theOwner);
if (myIterator == aListIter)
{