0022934: Wrong delete operator in IGESSelect_SelectFromDrawing.cxx / IGESSelect_Selec...
authorAMA <>
Fri, 17 Feb 2012 12:04:22 +0000 (12:04 +0000)
committerbugmaster <bugmaster@opencascade.com>
Mon, 5 Mar 2012 15:32:48 +0000 (19:32 +0400)
src/IGESSelect/IGESSelect_SelectFromDrawing.cxx
src/IGESSelect/IGESSelect_SelectFromSingleView.cxx

index d2fdccd..1cd8858 100755 (executable)
@@ -15,9 +15,7 @@
   Interface_EntityIterator draws = InputResult(G);
   if (draws.NbEntities() == 0) return list;
   Standard_Integer nb = G.Size();
-  char* nums = new char[nb+1];
   Standard_Integer i; // svv Jan11 2000 : porting on DEC
-  for (i = 1; i <= nb; i ++) nums[i] = 0;
 
 //  Pour chaque Drawing : prendre d une part l integralite de son contenu,
 //  (c-a-d avec le "Frame"), d autre part les entites attachees a ses vues
     list.GetOneItem (igesent);
     Interface_EntityIterator someviews = G.Shareds (draws.Value());
     list.AddList (someviews.Content());
-    for (someviews.Start(); someviews.More(); someviews.Next()) {
-      DeclareAndCast(IGESData_ViewKindEntity,igesview,someviews.Value());
-      Standard_Integer nv = G.EntityNumber(igesview);
-      if (nv > 0 && nv <= nb) nums[nv] = 1;
-    }
   }
   for (i = 1; i <= nb; i ++) {
 //    if (!G.IsPresent(i)) continue;
@@ -41,7 +34,6 @@
     Standard_Integer nv = G.EntityNumber (igesent->View());
     if (nv > 0 && nv <= nb) list.GetOneItem(igesent);
   }
-  delete nums;
   return list;
 }
 
index db554e2..04fb9dd 100755 (executable)
   Interface_EntityIterator views = InputResult(G);
   if (views.NbEntities() == 0) return list;
   Standard_Integer nb = G.Size();
-  char* nums = new char[nb+1];
   Standard_Integer i; // svv Jan11 2000 : porting on DEC
-  for (i = 1; i <= nb; i ++) nums[i] = 0;
-  for (views.Start(); views.More(); views.Next()) {
-    Standard_Integer nv = G.EntityNumber(views.Value());
-    if (nv > 0 && nv <= nb) nums[nv] = 1;
-  }
   for (i = 1; i <= nb; i ++) {
 //    if (!G.IsPresent(i)) continue;
     DeclareAndCast(IGESData_IGESEntity,igesent,G.Entity(i));
@@ -28,7 +22,6 @@
     Standard_Integer nv = G.EntityNumber (igesent->View());
     if (nv > 0 && nv <= nb) list.GetOneItem(igesent);
   }
-  delete nums;
   return list;
 }