View Issue Details

IDProjectCategoryView StatusLast Update
0004076FreeCADBugpublic2021-12-29 03:50
Reporterleoheck Assigned Tochennes  
PriorityhighSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Version0.18 
Target Version0.20Fixed in Version0.20 
Summary0004076: Freecad crashes when using Part Design Chamfer tool on a feature.
DescriptionFreecad crashes when creating a Part Design Chamfer on a feature that has a subtractive path on it. I tried 4 times with smaller chamfer values but I am always receiving a segfault.
Steps To ReproduceUsing the Part Design Workbench in a body full of features, then, trying to make a chamfer in some Edges makes Freecad crash immediately. For example, the edges that make Freecad break include:

- Edge1
- Edge165
- Edge165
Additional InformationOS: Ubuntu 19.04
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.3.
Build type: Release
Python version: 3.7.3
Qt version: 5.12.2
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/United States (en_US)


This is the output of Freecad running on the terminal.

➜ freecad
FreeCAD 0.18.3, Libs: 0.18.3R
© Juergen Riegel, Werner Mayer, Yorik van Havre 2001-2019
  ##### #### ### ####
  # # # # # #
  # ## #### #### # # # # #
  #### # # # # # # # ##### # #
  # # #### #### # # # # #
  # # # # # # # # # ## ## ##
  # # #### #### ### # # #### ## ## ##

Program received signal SIGSEGV, Segmentation fault.
#0 /lib/x86_64-linux-gnu/libc.so.6(+0x43f60) [0x7f24fa6e2f60]
#1 0x7f24d856daaa in BRep_Tool::Curve(TopoDS_Edge const&, TopLoc_Location&, double&, double&) from /lib/x86_64-linux-gnu/libTKBRep.so.7+0x2a
0000002 0x7f24d856dbf6 in BRep_Tool::Curve(TopoDS_Edge const&, double&, double&) from /lib/x86_64-linux-gnu/libTKBRep.so.7+0x46
0000003 0x7f24d9d80466 in ChFi3d_Builder::PerformIntersectionAtEnd(int) from /lib/x86_64-linux-gnu/libTKFillet.so.7+0x4186
0000004 0x7f24d9d89134 in ChFi3d_Builder::PerformOneCorner(int, bool) from /lib/x86_64-linux-gnu/libTKFillet.so.7+0x2dc4
0000005 0x7f24d9d2bfc1 in ChFi3d_Builder::PerformFilletOnVertex(int) from /lib/x86_64-linux-gnu/libTKFillet.so.7+0x4b1
0000006 0x7f24d9d2d42e in ChFi3d_Builder::Compute() from /lib/x86_64-linux-gnu/libTKFillet.so.7+0xdee
0000007 0x7f24d9ecb0c3 in BRepFilletAPI_MakeChamfer::Build() from /lib/x86_64-linux-gnu/libTKFillet.so.7+0x33
0000008 0x7f24d0fbf96b in PartDesign::Chamfer::execute() from /usr/lib/freecad-python3/lib/_PartDesign.so+0x65b
0000009 0x7f24fbe5e213 in App::DocumentObject::recompute() from /usr/lib/freecad-python3/lib/libFreeCADApp.so+0xb3
0000010 0x7f24da13e59b in Part::Feature::recompute() from /usr/lib/freecad-python3/lib/Part.so+0xb
0000011 0x7f24fbe1c588 in App::Document::_recomputeFeature(App::DocumentObject*) from /usr/lib/freecad-python3/lib/libFreeCADApp.so+0x58
0000012 0x7f24fbe23c5d in App::Document::recomputeFeature(App::DocumentObject*) from /usr/lib/freecad-python3/lib/libFreeCADApp.so+0x7d
0000013 0x7f24fad24426 in QMetaObject::activate(QObject*, int, int, void**) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x766
0000014 0x7f24fc6873f3 in Gui::QuantitySpinBox::valueChanged(double) from /usr/lib/freecad-python3/lib/libFreeCADGui.so+0x43
0000015 0x7f24fc68843a in Gui::QuantitySpinBox::userInput(QString const&) from /usr/lib/freecad-python3/lib/libFreeCADGui.so+0x46a
0000016 /usr/lib/freecad-python3/lib/libFreeCADGui.so(+0x692271) [0x7f24fc68b271]
0000017 0x7f24fad24426 in QMetaObject::activate(QObject*, int, int, void**) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x766
0000018 0x7f24fb247982 in QLineEdit::textChanged(QString const&) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x32
0000019 /lib/x86_64-linux-gnu/libQt5Widgets.so.5(+0x29e329) [0x7f24fb24e329]
0000020 0x7f24fad24426 in QMetaObject::activate(QObject*, int, int, void**) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x766
0000021 0x7f24fb24eeb5 in QWidgetLineControl::textChanged(QString const&) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x35
0000022 0x7f24fb25224e in QWidgetLineControl::finishChange(int, bool, bool) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x29e
0000023 0x7f24fb2555de in QWidgetLineControl::processKeyEvent(QKeyEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0xe6e
0000024 0x7f24fb247afa in QLineEdit::keyPressEvent(QKeyEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1a
0000025 0x7f24fb151177 in QWidget::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x7f7
0000026 0x7f24fb24dbea in QLineEdit::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0xaa
0000027 0x7f24fb2a4a78 in QAbstractSpinBox::keyPressEvent(QKeyEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x3a8
0000028 0x7f24fc68ce0b in Gui::QuantitySpinBox::keyPressEvent(QKeyEvent*) from /usr/lib/freecad-python3/lib/libFreeCADGui.so+0x13b
0000029 0x7f24fb151177 in QWidget::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x7f7
0000030 0x7f24fb2a7a99 in QAbstractSpinBox::event(QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x59
0000031 0x7f24fc68ceb6 in Gui::QuantitySpinBox::event(QEvent*) from /usr/lib/freecad-python3/lib/libFreeCADGui.so+0x36
0000032 0x7f24fb111551 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x81
0000033 0x7f24fb119852 in QApplication::notify(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1132
0000034 0x7f24fc3e73e8 in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/lib/freecad-python3/lib/libFreeCADGui.so+0x88
0000035 0x7f24facfa8e9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x179
0000036 /lib/x86_64-linux-gnu/libQt5Widgets.so.5(+0x1be52a) [0x7f24fb16e52a]
0000037 0x7f24fb111551 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x81
0000038 0x7f24fb118930 in QApplication::notify(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x210
#39 0x7f24fc3e73e8 in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/lib/freecad-python3/lib/libFreeCADGui.so+0x88
#40 0x7f24facfa8e9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x179
0000041 0x7f24f8f2afd3 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0x163
0000042 0x7f24f8f30055 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0x115
0000043 0x7f24f8f0a05b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Gui.so.5+0xbb
0000044 /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5(+0x7167a) [0x7f24f363267a]
0000045 /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x2ae) [0x7f24f85c69ee]
0000046 /lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x4ec88) [0x7f24f85c6c88]
0000047 /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x2c) [0x7f24f85c6d1c]
0000048 0x7f24fad4e047 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x67
0000049 0x7f24facf95bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x13b
0000050 0x7f24fad015e2 in QCoreApplication::exec() from /lib/x86_64-linux-gnu/libQt5Core.so.5+0x92
0000051 0x7f24fc384c56 in Gui::Application::runApplication() from /usr/lib/freecad-python3/lib/libFreeCADGui.so+0x14c6
0000052 freecad(main+0x6a6) [0x55ebf0953776]
0000053 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb) [0x7f24fa6c5b6b]
0000054 freecad(_start+0x2a) [0x55ebf0953a7a]



Tags#post-to-forum, Chamfer, crash, fillet, OCC Bug, upstream
FreeCAD InformationTracking this via OCC bugs in the bugtracker forum thread

Relationships

duplicate of 0004543 closedchennes FreeCAD crashes when OCC fails with fillets and chamfers 

Activities

leoheck

2019-07-31 12:22

reporter  

crash.FCStd (4,218,555 bytes)

Kunda1

2019-08-01 13:33

administrator   ~0013396

@leoheck can you reproduce on 0.19_pre ?
Also there is no linked discussion thread (as requested in the ticket posting guidelines (top of the page), please bring the community's attention to this by posting about it.

Kunda1

2019-12-17 04:08

administrator   ~0013922

@leoheck ping

leoheck

2019-12-17 11:53

reporter   ~0013930

Hi Kunda, sometimes I just don't know how to reproduce the issue. I mean, the Freecad file is the only thing I know/remember on how to reproduce it.

I've been updating Freecad 0.19 every day, and the feeling is that is it is more robust now regarding the Chamfer tool. I also noted that we have a better way to remove chamfer features with the del key, which is really nice since sometimes the feature is missing or hidden somewhere.

Now, my current problem is the Subtractive Polar Pattern. Sometimes when I have to update the base feature, this feature won't work properly anymore, and I don't know/have a way to fix it. My base feature is usually a revolution and the Subtractive Polar pattern usually can't make N copies of the object that subtract the main feature. I don't know why this happens but the effect is like it is not revolving in the z-axis (or it is shifted). Should I open a bug report for that? I really dont know how to reproduce. But I also want you to know these things.

openBrain

2019-12-17 12:34

developer   ~0013932

@leoheck : As a simple question : could you still reproduce this bug with latest 0.19 ?

Regarding your new problem, please follow guidelines and open a new topic on the forum.

rajendrasp79

2019-12-26 12:11

reporter   ~0013944

This is crashing inside the OpenCASCADE code. I checked with latest binaries of OpenCASCADE TKFilletd.dll and the issue is not reproducible. I think it is fixed in the latest version of OpenCASCADE. I am new to FreeCAD development so it will be really great to know what action needs to be taken on this issue given the above observation.

openBrain

2019-12-27 21:20

developer   ~0013945

@rajendrasp79 : it may depend on OCC build flags. See 0003436:0012736

Kunda1

2020-12-31 12:34

administrator   ~0015187

@leoheck can you reproduce this per 0004076:0013932

Kunda1

2020-12-31 13:04

administrator   ~0015191

Tracking this via OCC bugs in the bugtracker forum thread

chennes

2021-02-04 05:17

administrator   ~0015259

This should be resolved by the fix in 0004543, but the download of the test file from the OP is failing for me, so I cannot test. If there is a forums post that has that attachment, can you link it here?

Kunda1

2021-02-27 13:25

administrator   ~0015447

@chennes has created a downstream patch that fixes the crash. It is slowly being integrated in to downstream packages (ATM libpack is the only one but more will follow). This issue is therefore being marked as resolved. It will be closed one all packages are patched or when (if) upstream merges.

chennes

2021-12-29 03:50

administrator   ~0016143

This patch has been merged into OpenCASCADE 7.6, and the patch for earlier OCCT versions has been incorporated into all packages of FreeCAD 0.19.3 that I am aware of.

Issue History

Date Modified Username Field Change
2019-07-31 12:22 leoheck New Issue
2019-07-31 12:22 leoheck File Added: crash.FCStd
2019-08-01 13:33 Kunda1 Note Added: 0013396
2019-08-01 13:33 Kunda1 Status new => feedback
2019-08-01 13:33 Kunda1 Tag Attached: #post-to-forum
2019-12-17 04:08 Kunda1 Note Added: 0013922
2019-12-17 11:53 leoheck Note Added: 0013930
2019-12-17 11:53 leoheck Status feedback => new
2019-12-17 12:34 openBrain Note Added: 0013932
2019-12-26 12:11 rajendrasp79 Note Added: 0013944
2019-12-27 21:20 openBrain Note Added: 0013945
2020-04-25 14:09 Kunda1 Tag Attached: OCC Bug
2020-04-25 14:09 Kunda1 Tag Attached: upstream
2020-12-31 12:34 Kunda1 Note Added: 0015187
2020-12-31 13:04 Kunda1 Steps to Reproduce Updated
2020-12-31 13:04 Kunda1 Additional Information Updated
2020-12-31 13:04 Kunda1 FreeCAD Information => Tracking this via OCC bugs in the bugtracker forum thread
2020-12-31 13:04 Kunda1 Note Added: 0015191
2021-02-03 16:54 Kunda1 Tag Attached: fillet
2021-02-03 16:54 Kunda1 Tag Attached: Chamfer
2021-02-03 16:54 Kunda1 Tag Attached: crash
2021-02-04 05:17 chennes Note Added: 0015259
2021-02-06 06:49 abdullah Target Version => 0.20
2021-02-27 13:25 Kunda1 Assigned To => chennes
2021-02-27 13:25 Kunda1 Status new => resolved
2021-02-27 13:25 Kunda1 Resolution open => fixed
2021-02-27 13:25 Kunda1 Fixed in Version => 0.20
2021-02-27 13:25 Kunda1 Note Added: 0015447
2021-02-27 13:25 Kunda1 Relationship added duplicate of 0004543
2021-12-29 03:50 chennes Status resolved => closed
2021-12-29 03:50 chennes Note Added: 0016143