View Issue Details

IDProjectCategoryView StatusLast Update
0033113CommunityOCCT:Modeling Algorithmspublic2022-11-29 13:44
Reporterdratner Assigned Toabulychev-ext  
PriorityhighSeveritycrash 
Status assignedResolutionopen 
PlatformWindowsOSVC++ 2015 
Product Version7.3.0 
Target Version7.8.0 
Summary0033113: Modeling Algorithms - BRepFilletAPI_MakeFillet::Build SIGSEGV
DescriptionBRepFilletAPI_MakeFillet generates a SIGSEGV when filleting the fourth edge (circled in red in 2edge_fillet.jpg and also found as the fourth edge from a TopExp::MapShapes (bodyShp, TopAbs_EDGE, ...) query). The 11th edge (also highlighted in yellow) is added to the circuit (within the filleting algorithm. Here is a stack:

Given:
TopoDS_Solid bodyShp;
TopoDS_Edge edgeShp;
double radius = 0.1;

      BRepFilletAPI_MakeFillet fillet(bodyShp);
      fillet.Add(radius, edgeShp);
      fillet.Build();
        ChFi3d_FilBuilder myBuilder.Compute();
          for (j) = 1, 2
          2: ChFi3d_FilBuilder::PerformFilletOnVertex(const Standard_Integer Index = j);  // Index == 2
            myVDataMap(2)::FindKey(Index) > TopoDS_Vertex = (-1.3220155066999999, -0.34, 1.0)
            ChFi3d_FilBuilder::PerformOneCorner(Index)
              Vtx = myVDataMap.FindKey(Index);  // same
              Arcprol = TopoDS_Edge, Fop = TopoDS_Face (Plane), Ubid = 0.0
                  Handle(Geom2d_Curve) Hc = BRep_Tool::CurveOnSurface(Arcprol,Fop,Ubid,Ubid);  // Hc == 0x0!!!
                // Returns NULL if curve DNE
              Hc->Value(parVtx)  // SEGV
Steps To Reproduce1. Load 2edge_fillet.brep
2. Construct BRepFilletAPI_MakeFillet fillet object with bodyShp
3. Add (radius, edgeShp)
4. Call fillet.Build()
Additional information
and documentation updates
ChFi3d_FilBuilder::PerformOneCorner might be made more robust by adding checks for NULL pointers before dereferencing. Throwing an exception might be acceptable, or something more elaborate.
TagsNo tags attached.
Test case number

Attached Files

  • 2edge_fillet.brep (5,825 bytes)
  • 2edge_fillet.jpg (82,271 bytes)
  • bug33113.brep (5,825 bytes)

Activities

dratner

2022-08-26 02:36

reporter   ~0110373

This is my first submission. I did not know who to assign to, so please reassign if necessary. I also attached two files but I don't see them here. If you do not see them, please let me know and I'll try again. Thanks!

kgv

2022-08-26 09:17

developer   ~0110376

@dratner

> I did not know who to assign to, so please reassign if necessary.
Bugtracker automatically selects assigning person based on selected Category - so just try to choose a relevant category and don't change default assignee.
In case, if responsible for a Category will found bug irrelevant to it - he will move it to a better place, hence nothing to worry about (but this might have some considerable lag, so that choosing relevant Category is desirable).

> I also attached two files but I don't see them here.
Please re-attach them - there might be a bug in Mantis causing file attachment during bug creation being lost.

dratner

2022-08-26 16:48

reporter   ~0110381

Attaching files: 2edge_fillet.{brep, jpg}
2edge_fillet.brep (5,825 bytes)
2edge_fillet.jpg (82,271 bytes)

git

2022-10-26 16:36

administrator   ~0111757

Branch CR33113 has been created by abulychev-ext.

SHA-1: 86af3046cefae9cfe649dbf7ddeb452b7fec261c


Detailed log of new commits:

Author: abulyche
Date: Wed Oct 26 16:34:45 2022 +0300

    0033113: Modeling Algorithms - BRepFilletAPI_MakeFillet::Build SIGSEGV
    
    Modified the method ChFi3d_EdgeState();
    Added the test case for this ticket.

abulychev-ext

2022-10-26 16:37

developer   ~0111758

bug33113.brep (5,825 bytes)

git

2022-11-02 20:40

administrator   ~0111894

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: 050ddef92425badb5110d72821820216e63b9cf5

git

2022-11-07 12:43

administrator   ~0111909

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: d52cf43ff59c69c642337ded432dfa5b95d3cb9b

git

2022-11-11 11:42

administrator   ~0112022

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: b6dd0f4df3d19d95c231f8771e29f6716703ebf5

git

2022-11-21 13:51

administrator   ~0112266

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: 8604dfa3451b5c0340562e50310bd4e064fb56ea

git

2022-11-23 14:39

administrator   ~0112282

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: 23f3c9afc7d03a8c699352240986ddb8d6c6f85f

git

2022-11-25 15:17

administrator   ~0112305

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: bdfcb0d2707d9a04031da733329a955cf62f558b

git

2022-11-25 15:21

administrator   ~0112306

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: 83b532f8aaf16217f1421e09e7219f6ebf04ae1c

git

2022-11-28 15:49

administrator   ~0112361

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: e6b45cf146d4e8f3ce22645e2596c4022fd3db3c

git

2022-11-29 13:44

administrator   ~0112388

Branch CR33113 has been updated forcibly by abulychev-ext.

SHA-1: d8f4b378e501590fede94646a1ceef07660a9ef7

Issue History

Date Modified Username Field Change
2022-08-26 02:31 dratner New Issue
2022-08-26 02:31 dratner Assigned To => msv
2022-08-26 02:36 dratner Note Added: 0110373
2022-08-26 09:17 kgv Note Added: 0110376
2022-08-26 09:18 kgv Description Updated
2022-08-26 09:18 kgv Target Version => 7.7.0
2022-08-26 09:18 kgv Summary BRepFilletAPI_MakeFillet::Build SIGSEGV => Modeling Algorithms - BRepFilletAPI_MakeFillet::Build SIGSEGV
2022-08-26 16:48 dratner Note Added: 0110381
2022-08-26 16:48 dratner File Added: 2edge_fillet.brep
2022-08-26 16:48 dratner File Added: 2edge_fillet.jpg
2022-10-07 10:42 szy Assigned To msv => abulychev-ext
2022-10-07 10:42 szy Priority normal => high
2022-10-07 10:42 szy Status new => assigned
2022-10-24 10:40 szy Target Version 7.7.0 => 7.8.0
2022-10-26 16:36 git Note Added: 0111757
2022-10-26 16:37 abulychev-ext Note Added: 0111758
2022-10-26 16:37 abulychev-ext File Added: bug33113.brep
2022-11-02 20:40 git Note Added: 0111894
2022-11-07 12:43 git Note Added: 0111909
2022-11-11 11:42 git Note Added: 0112022
2022-11-21 13:51 git Note Added: 0112266
2022-11-23 14:39 git Note Added: 0112282
2022-11-25 15:17 git Note Added: 0112305
2022-11-25 15:21 git Note Added: 0112306
2022-11-28 15:49 git Note Added: 0112361
2022-11-29 13:44 git Note Added: 0112388