Fix for the '52701: SIGSEGV in Mesh creation dialog box after activating Viscous Layers hypothesis' issue.

This commit is contained in:
rnv 2015-04-27 14:52:23 +03:00
parent 929ce6ba39
commit 299e2326cd
2 changed files with 13 additions and 3 deletions

View File

@ -551,9 +551,17 @@ void SMESHGUI_MeshOp::selectionDone()
for ( ; aSubShapesIter != aGEOMs.end(); aSubShapesIter++, iSubSh++) {
QString aSubGeomEntry = (*aSubShapesIter);
_PTR(SObject) pSubGeom = studyDS()->FindObjectID(aSubGeomEntry.toLatin1().data());
GEOM::GEOM_Object_var aSubGeomVar =
GEOM::GEOM_Object::_narrow(_CAST(SObject,pSubGeom)->GetObject());
aSeq[iSubSh] = aSubGeomVar;
if( pSubGeom ) {
SALOMEDS_SObject* sobj = _CAST(SObject,pSubGeom);
if( sobj ) {
GEOM::GEOM_Object_var aSubGeomVar =
GEOM::GEOM_Object::_narrow(sobj->GetObject());
if( !aSubGeomVar->_is_nil() ){
aSeq[iSubSh] = aSubGeomVar;
}
}
}
}
} else {
// get geometry by selected sub-mesh

View File

@ -134,6 +134,8 @@ StdMeshersGUI_SubShapeSelectorWdg::~StdMeshersGUI_SubShapeSelectorWdg()
mySelectionMgr->removeFilter( myFilter );
delete myFilter; myFilter=0;
mySelectionMgr->clearSelected();
SUIT_SelectionFilter* filter;
foreach( filter, myGeomFilters )
delete filter;