TopoDS_Vertex V1 = sae.FirstVertex (E);
TopoDS_Vertex V2 = sae.LastVertex (E);
+ if (V1.IsNull() || V2.IsNull())
+ {
+ myStatus = ShapeExtend::EncodeStatus (ShapeExtend_FAIL2);
+ return Standard_False;
+ }
gp_Pnt p1 = BRep_Tool::Pnt (V1);
gp_Pnt p2 = BRep_Tool::Pnt (V2);
Standard_Real dist = p1.Distance(p2);
TopoDS_Edge aedge = myWire->Edge(i);
TopoDS_Vertex aV1,aV2;
TopExp::Vertices(aedge,aV1,aV2);
+ if (aV1.IsNull() || aV2.IsNull())
+ {
+ myStatus = ShapeExtend::EncodeStatus (ShapeExtend_FAIL2);
+ return Standard_False;
+ }
Standard_Boolean isSame = aV1.IsSame(aV2);
if(myWire->IsSeam(i))
aMapSeemEdges.Add(aedge); ///continue;
--- /dev/null
+puts "============"
+puts "OCC24934"
+puts "============"
+puts ""
+######################################################
+# Section: crash for two faces
+######################################################
+
+restore [locate_data_file bug24934_f1.brep] f1
+
+set info [fixshape ff1 f1]
+if { [regexp "Exception" $info] != 0 } {
+ puts "Error : Exception in \"fixshape\" command was caught"
+} else {
+ puts "OK: Command \"fixshape\" work properly"
+}