IPAL21297: errors for Netgen_1D_2D

In UnionIDs(), check type of a member to add
This commit is contained in:
eap 2009-11-03 07:13:24 +00:00
parent 6f253305f3
commit debaa376da

View File

@ -567,13 +567,17 @@ void GEOMImpl_IGroupOperations::UnionIDs (Handle(GEOM_Object) theGroup,
TopTools_IndexedMapOfShape mapIndices;
TopExp::MapShapes(aMainShape, mapIndices);
// Get group type
TopAbs_ShapeEnum aType = GetType(theGroup);
// Get IDs of sub-shapes to add
Standard_Integer i, new_id;
for (i = 1; i <= aLen; i++) {
new_id = theSubShapes->Value(i);
if (0 < new_id && new_id <= mapIndices.Extent()) {
if (mapIDs.Add(new_id)) {
//if (mapIDs.Add(new_id)) { IPAL21297. Why we ignore invalid ids silently?
if (mapIDs.Add(new_id) && mapIndices(new_id).ShapeType()==aType ) {
aNewIDs.Append(new_id);
}
}