]> OCCT Git - occt-copy.git/commitdiff
0026496: Error in use the BRepCheck_Analyzer
authornbv <nbv@opencascade.com>
Wed, 29 Jul 2015 10:50:38 +0000 (13:50 +0300)
committernbv <nbv@opencascade.com>
Wed, 29 Jul 2015 10:59:44 +0000 (13:59 +0300)
Implementation Propagate() function from MASTER (in BRepCheck_Wire)

src/BRepCheck/BRepCheck_Wire.cxx

index a9eb715f9434fc4f305048e012489c1a81adf4e5..5c7c5f4ce130311cbc83caf88fda5a287c29fcbd 100644 (file)
@@ -1549,7 +1549,8 @@ static void Propagate(const TopTools_IndexedDataMapOfShapeListOfShape& mapVE,
     for (; itrc.More(); itrc.Next())
     {
       const TopoDS_Shape& Edge = itrc.Value();
-      mapE.Add(Edge);
+      if (!mapE.Contains(Edge)) 
+        mapE.Add(Edge);
 
       TopExp_Explorer ex(Edge, TopAbs_VERTEX);
       for (; ex.More(); ex.Next())
@@ -1565,7 +1566,10 @@ static void Propagate(const TopTools_IndexedDataMapOfShapeListOfShape& mapVE,
           {
             const TopoDS_Shape& E = itl.Value();
             if (!Edge.IsSame(E) && !mapE.Contains(E))
+            {
+              mapE.Add(E);
               nextEdges.Append(E);
+            }
           }
         }
       }