View Issue Details

IDProjectCategoryView StatusLast Update
0032588CommunityOCCT:Modeling Algorithmspublic2024-01-30 12:32
ReporterJerome Caucat Assigned Toastromko  
PrioritynormalSeveritycrash 
Status newResolutionopen 
PlatformLinuxOSUbuntu 20.04 
Product Version7.5.3 
Summary0032588: BRepOffsetAPI_MakePipeShell::Build() crash in BOPDS_DS::Paves (Segmentation fault)
DescriptionI am using OCCT v7.5.3 with the patch in attachment that fixes https://tracker.dev.opencascade.org/view.php?id=32444.

Testing the provided sample, I get a Segmentation fault while building the BRepOffsetAPI_MakePipeShell in C++ and in DRAW. The crash happens in:

BOPDS_DS::Paves(int, NCollection_List<BOPDS_Pave>&) ()

Note that in debug or with the cmake option -DBUILD_RELEASE_DISABLE_EXCEPTIONS=OFF an exception is raised instead of the crash.

Also note that the crash does not happen 100% of the time. Sometimes an error is returned and sometimes it hangs.


Here is the backtrace in DRAW:

$ LD_LIBRARY_PATH=/home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib gdb /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/bin/DRAWEXE-7.5.3
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/bin/DRAWEXE-7.5.3...
(No debugging symbols found in /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/bin/DRAWEXE-7.5.3)
(gdb) r < test_CN.tcl
Starting program: /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/bin/DRAWEXE-7.5.3 < test_CN.tcl
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Draw[1]> [New Thread 0x7ffff2af2700 (LWP 58858)]
1
s
p
Status: DONE1


Thread 1 "DRAWEXE-7.5.3" received signal SIGSEGV, Segmentation fault.
0x00007ffff0a69889 in BOPDS_DS::Paves(int, NCollection_List<BOPDS_Pave>&) ()
   from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKBO.so.7
(gdb) bt
#0 0x00007ffff0a69889 in BOPDS_DS::Paves(int, NCollection_List<BOPDS_Pave>&) ()
   from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKBO.so.7
0000001 0x00007ffff11489ee in BRepFill_TrimShellCorner::MakeFacesNonSec(int, BOPDS_DS* const&, int, int) ()
   from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKBool.so.7
0000002 0x00007ffff114fee4 in BRepFill_TrimShellCorner::Perform() () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKBool.so.7
#3 0x00007ffff1136bfc in BRepFill_Sweep::PerformCorner(int, BRepFill_TransitionStyle, opencascade::handle<TopTools_HArray2OfShape> const&) ()
   from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKBool.so.7
#4 0x00007ffff113a9ee in BRepFill_Sweep::Build(NCollection_Map<TopoDS_Shape, TopTools_ShapeMapHasher>&, NCollection_DataMap<TopoDS_Shape, opencascade::handle<TopTools_HArray2OfShape>, TopTools_ShapeMapHasher>&, NCollection_DataMap<TopoDS_Shape, opencascade::handle<TopTools_HArray2OfShape>, TopTools_ShapeMapHasher>&, BRepFill_TransitionStyle, GeomAbs_Shape, GeomFill_ApproxStyle, int, int) () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKBool.so.7
#5 0x00007ffff111d6d3 in BRepFill_PipeShell::Build() () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKBool.so.7
#6 0x00007ffff1beed00 in BRepOffsetAPI_MakePipeShell::Build() ()
   from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKOffset.so.7
0000007 0x00007ffff1fdb439 in ?? () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKTopTest.so
0000008 0x00007ffff7d5663b in ?? () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKDraw.so.7
0000009 0x00007ffff6c24879 in TclInvokeStringCommand () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
#10 0x00007ffff6c29a16 in TclNRRunCallbacks () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
0000011 0x00007ffff6cc6474 in Tcl_RecordAndEvalObj () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
#12 0x00007ffff6cc65d7 in Tcl_RecordAndEval () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
0000013 0x00007ffff7d42774 in Draw_Interprete(char const*) () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKDraw.so.7
0000014 0x00007ffff7d6e176 in ?? () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKDraw.so.7
0000015 0x00007ffff6cd4afc in Tcl_NotifyChannel () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
0000016 0x00007ffff6cd4be8 in ChannelTimerProc () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
0000017 0x00007ffff6d11235 in TimerHandlerEventProc () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
0000018 0x00007ffff6cef8b7 in Tcl_ServiceEvent () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
0000019 0x00007ffff6cefbc9 in Tcl_DoOneEvent () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtcl8.6.so
0000020 0x00007ffff68cf6a2 in Tk_MainLoop () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libtk8.6.so
0000021 0x00007ffff7d6de75 in Run_Appli(bool (*)(char const*)) () from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKDraw.so.7
0000022 0x00007ffff7d43ceb in Draw_Appli(int, char**, void (*)(Draw_Interpretor&)) ()
   from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKDraw.so.7
0000023 0x00007ffff7d572c1 in Draw_Main(int, char**, void (*)(Draw_Interpretor&)) ()
   from /home/jerome/Work/thirdparties/dev.opencascade.org-occt/install-OCCT-753-full/lib/libTKDraw.so.7
0000024 0x00007ffff79270b3 in __libc_start_main (main=0x555555400b50 <main>, argc=1, argv=0x7fffffffddf8, init=<optimized out>, fini=<optimized out>,
    rtld_fini=<optimized out>, stack_end=0x7fffffffdde8) at ../csu/libc-start.c:308
0000025 0x0000555555400bba in _start ()
Steps To Reproducedraw.sh < test_CN.tcl
TagsNo tags attached.
Test case number

Attached Files

  • sample_crash_BOPDS_DS__Paves.zip (6,385 bytes)
  • 0001-Fix-crash-0032444.patch (1,032 bytes)

Activities

Jerome Caucat

2021-09-24 15:29

reporter  

sample_crash_BOPDS_DS__Paves.zip (6,385 bytes)

Jerome Caucat

2021-09-24 15:30

reporter  

0001-Fix-crash-0032444.patch (1,032 bytes)

dpasukhi

2024-01-30 12:29

administrator   ~0115007

There is already patch.
Needs to check.

Issue History

Date Modified Username Field Change
2021-09-24 15:29 Jerome Caucat New Issue
2021-09-24 15:29 Jerome Caucat Assigned To => msv
2021-09-24 15:29 Jerome Caucat File Added: sample_crash_BOPDS_DS__Paves.zip
2021-09-24 15:30 Jerome Caucat File Added: 0001-Fix-crash-0032444.patch
2024-01-30 12:29 dpasukhi Note Added: 0115007
2024-01-30 12:32 dpasukhi Assigned To msv => astromko