Bug 1775688

Summary: segfault when displaying anything
Product: [Fedora] Fedora Reporter: Przemek Klosowski <przemek>
Component: freecadAssignee: Richard Shaw <hobbes1069>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 31CC: cz172638, hobbes1069, john
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: freecad-0.18.4-3.fc30 freecad-0.18.4-3.fc31 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-01-04 22:15:02 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1784153    

Description Przemek Klosowski 2019-11-22 15:13:14 UTC
Description of problem:
FreeCAD starts and displays initial screen, but when displaying anything else (e.g. the example engine block) it segfaults 

Version-Release number of selected component (if applicable):
freecad-0.18.4-1.fc31.x86_64


How reproducible: every time 


Steps to Reproduce:
1. run FreeCAD from commandline
2. click on EngineBlock.FCStd example


Actual results:
FreeCAD 0.18, Libs: 0.18RUnknown
© Juergen Riegel, Werner Mayer, Yorik van Havre 2001-2019
  #####                 ####  ###   ####  
  #                    #      # #   #   # 
  #     ##  #### ####  #     #   #  #   # 
  ####  # # #  # #  #  #     #####  #   # 
  #     #   #### ####  #    #     # #   # 
  #     #   #    #     #    #     # #   #  ##  ##  ##
  #     #   #### ####   ### #     # ####   ##  ##  ##

Program received signal SIGSEGV, Segmentation fault.
#0  /lib64/libc.so.6(+0x3c6b0) [0x7f9e17e746b0]
#1  0x7f9e1796e19e in SoFieldContainer::getAllFields(SoFieldList&) const from /lib64/libCoin.so.80+0x4e
#2  /usr/lib64/python3.7/site-packages/pivy/_coin.cpython-37m-x86_64-linux-gnu.so(+0x4dabe9) [0x7f9d77c09be9]
#3  /lib64/libpython3.7m.so.1.0(_PyMethodDef_RawFastCallKeywords+0x25e) [0x7f9e18ee468e]
#4  /lib64/libpython3.7m.so.1.0(_PyCFunction_FastCallKeywords+0x23) [0x7f9e18ee47c3]
#5  /lib64/libpython3.7m.so.1.0(+0x141503) [0x7f9e18f17503]
#6  /lib64/libpython3.7m.so.1.0(_PyEval_EvalFrameDefault+0x55b2) [0x7f9e18f524c2]
#7  /lib64/libpython3.7m.so.1.0(_PyFunction_FastCallKeywords+0x102) [0x7f9e18f05c02]
#8  /lib64/libpython3.7m.so.1.0(+0x1413ef) [0x7f9e18f173ef]
#9  /lib64/libpython3.7m.so.1.0(_PyEval_EvalFrameDefault+0x55b2) [0x7f9e18f524c2]
#10  /lib64/libpython3.7m.so.1.0(_PyFunction_FastCallDict+0x11a) [0x7f9e18f0626a]
#11  /lib64/libpython3.7m.so.1.0(_PyObject_Call_Prepend+0x66) [0x7f9e18ed9e26]
#12  /lib64/libpython3.7m.so.1.0(_PyObject_FastCallDict+0xa5) [0x7f9e18ed5b45]
#13  /lib64/libpython3.7m.so.1.0(+0x10d35f) [0x7f9e18ee335f]
#14  /lib64/libpython3.7m.so.1.0(PyObject_CallFunctionObjArgs+0x99) [0x7f9e18ee3599]
#15  /lib64/libpython3.7m.so.1.0(+0x10d75d) [0x7f9e18ee375d]
#16  /lib64/libpython3.7m.so.1.0(+0x13f351) [0x7f9e18f15351]
#17  /lib64/libpython3.7m.so.1.0(_PyEval_EvalFrameDefault+0xac9) [0x7f9e18f4d9d9]
#18  /lib64/libpython3.7m.so.1.0(_PyFunction_FastCallDict+0x11a) [0x7f9e18f0626a]
#19  /lib64/libpython3.7m.so.1.0(_PyObject_Call_Prepend+0x66) [0x7f9e18ed9e26]
#20  /lib64/libpython3.7m.so.1.0(PyObject_Call+0x7e) [0x7f9e18f0697e]
#21  0x7f9e19de4343 in Gui::ViewProviderPythonFeatureImp::attach(App::DocumentObject*) from /usr/lib64/freecad/lib/libFreeCADGui.so+0x4d3
#22  0x7f9d96d4dcea in Gui::ViewProviderPythonFeatureT<PartGui::ViewProvider2DObject>::onChanged(App::Property const*) from /usr/lib64/freecad/lib/PartGui.so+0xda
#23  0x7f9e1955fbf5 in App::Property::touch() from /usr/lib64/freecad/lib/libFreeCADApp.so+0x35
#24  0x7f9e1958245a in App::PropertyPythonObject::Restore(Base::XMLReader&) from /usr/lib64/freecad/lib/libFreeCADApp.so+0x5ba
#25  0x7f9e195508b5 in App::DynamicProperty::Restore(Base::XMLReader&) from /usr/lib64/freecad/lib/libFreeCADApp.so+0x315
#26  0x7f9e19b18cfe in Gui::Document::RestoreDocFile(Base::Reader&) from /usr/lib64/freecad/lib/libFreeCADGui.so+0x1ae
#27  0x7f9e19269d06 in Base::XMLReader::readFiles(zipios::ZipInputStream&) const from /usr/lib64/freecad/lib/libFreeCADBase.so+0x1b6
#28  0x7f9e1949b2db in App::Document::restore() from /usr/lib64/freecad/lib/libFreeCADApp.so+0x36b
#29  0x7f9e195b7704 in App::Application::openDocument(char const*) from /usr/lib64/freecad/lib/libFreeCADApp.so+0x194
#30  0x7f9e195d2d3d in App::Application::sOpenDocument(_object*, _object*) from /usr/lib64/freecad/lib/libFreeCADApp.so+0xad
#31  /lib64/libpython3.7m.so.1.0(_PyMethodDef_RawFastCallKeywords+0x25e) [0x7f9e18ee468e]
#32  /lib64/libpython3.7m.so.1.0(_PyCFunction_FastCallKeywords+0x23) [0x7f9e18ee47c3]
#33  /lib64/libpython3.7m.so.1.0(+0x141503) [0x7f9e18f17503]
#34  /lib64/libpython3.7m.so.1.0(_PyEval_EvalFrameDefault+0x55b2) [0x7f9e18f524c2]
#35  /lib64/libpython3.7m.so.1.0(_PyEval_EvalCodeWithName+0x2f0) [0x7f9e18f04d90]
#36  /lib64/libpython3.7m.so.1.0(PyEval_EvalCodeEx+0x39) [0x7f9e18f05af9]
#37  /lib64/libpython3.7m.so.1.0(PyEval_EvalCode+0x1b) [0x7f9e18f93e4b]
#38  /lib64/libpython3.7m.so.1.0(+0x1febf3) [0x7f9e18fd4bf3]
#39  /lib64/libpython3.7m.so.1.0(PyRun_StringFlags+0x7d) [0x7f9e18fd4c8d]
#40  0x7f9e19238e2a in Base::InterpreterSingleton::runString[abi:cxx11](char const*) from /usr/lib64/freecad/lib/libFreeCADBase.so+0x6a
#41  0x7f9e195d25f7 in App::Application::sLoadFile(_object*, _object*) from /usr/lib64/freecad/lib/libFreeCADApp.so+0x567
#42  /lib64/libpython3.7m.so.1.0(_PyMethodDef_RawFastCallKeywords+0x25e) [0x7f9e18ee468e]
#43  /lib64/libpython3.7m.so.1.0(_PyCFunction_FastCallKeywords+0x23) [0x7f9e18ee47c3]
#44  /lib64/libpython3.7m.so.1.0(+0x141503) [0x7f9e18f17503]
#45  /lib64/libpython3.7m.so.1.0(_PyEval_EvalFrameDefault+0x55b2) [0x7f9e18f524c2]
#46  /lib64/libpython3.7m.so.1.0(_PyEval_EvalCodeWithName+0x2f0) [0x7f9e18f04d90]
#47  /lib64/libpython3.7m.so.1.0(PyEval_EvalCodeEx+0x39) [0x7f9e18f05af9]
#48  /lib64/libpython3.7m.so.1.0(PyEval_EvalCode+0x1b) [0x7f9e18f93e4b]
#49  /lib64/libpython3.7m.so.1.0(+0x1febf3) [0x7f9e18fd4bf3]
#50  /lib64/libpython3.7m.so.1.0(PyRun_StringFlags+0x7d) [0x7f9e18fd4c8d]
#51  /lib64/libpython3.7m.so.1.0(+0x1ff05b) [0x7f9e18fd505b]
#52  /lib64/libpython3.7m.so.1.0(_PyMethodDef_RawFastCallKeywords+0x74) [0x7f9e18ee44a4]
#53  /lib64/libpython3.7m.so.1.0(_PyCFunction_FastCallKeywords+0x23) [0x7f9e18ee47c3]
#54  /lib64/libpython3.7m.so.1.0(+0x141503) [0x7f9e18f17503]
#55  /lib64/libpython3.7m.so.1.0(_PyEval_EvalFrameDefault+0xb58) [0x7f9e18f4da68]
#56  /lib64/libpython3.7m.so.1.0(_PyEval_EvalCodeWithName+0x2f0) [0x7f9e18f04d90]
#57  /lib64/libpython3.7m.so.1.0(PyEval_EvalCodeEx+0x39) [0x7f9e18f05af9]
#58  /lib64/libpython3.7m.so.1.0(PyEval_EvalCode+0x1b) [0x7f9e18f93e4b]
#59  /lib64/libpython3.7m.so.1.0(+0x1febf3) [0x7f9e18fd4bf3]
#60  /lib64/libpython3.7m.so.1.0(PyRun_StringFlags+0x7d) [0x7f9e18fd4c8d]
#61  0x7f9e19238e2a in Base::InterpreterSingleton::runString[abi:cxx11](char const*) from /usr/lib64/freecad/lib/libFreeCADBase.so+0x6a
#62  0x7f9e19b76784 in Gui::Command::doCommand(Gui::Command::DoCmd_Type, char const*, ...) from /usr/lib64/freecad/lib/libFreeCADGui.so+0x134
#63  0x7f9dfc374f70 in WebGui::BrowserView::onLinkClicked(QUrl const&) from /usr/lib64/freecad/lib/WebGui.so+0x820
#64  0x7f9e184a5dfb in QMetaObject::activate(QObject*, int, int, void**) from /lib64/libQt5Core.so.5+0x69b
#65  0x7f9de6a63cc9 in QWebView::linkClicked(QUrl const&) from /lib64/libQt5WebKitWidgets.so.5+0x39
#66  /lib64/libQt5WebKitWidgets.so.5(+0x37baa) [0x7f9de6a64baa]
#67  0x7f9e184a5dfb in QMetaObject::activate(QObject*, int, int, void**) from /lib64/libQt5Core.so.5+0x69b
#68  0x7f9de6a59389 in QWebPage::linkClicked(QUrl const&) from /lib64/libQt5WebKitWidgets.so.5+0x39
#69  0x7f9de6a59ceb in QWebPage::acceptNavigationRequest(QWebFrame*, QNetworkRequest const&, QWebPage::NavigationType) from /lib64/libQt5WebKitWidgets.so.5+0x8b
#70  /lib64/libQt5WebKit.so.5(+0x5a9fd0) [0x7f9de3f4afd0]
#71  /lib64/libQt5WebKit.so.5(+0x166446e) [0x7f9de500546e]
#72  /lib64/libQt5WebKit.so.5(+0x1648404) [0x7f9de4fe9404]
#73  /lib64/libQt5WebKit.so.5(+0x1648a39) [0x7f9de4fe9a39]
#74  /lib64/libQt5WebKit.so.5(+0x16492f2) [0x7f9de4fea2f2]
#75  0x7f9de4feaf31 in WebCore::FrameLoader::loadFrameRequest(WebCore::FrameLoadRequest const&, WebCore::Event*, WTF::PassRefPtr<WebCore::FormState>) from /lib64/libQt5WebKit.so.5+0x3e1
#76  /lib64/libQt5WebKit.so.5(+0x164a4ec) [0x7f9de4feb4ec]
#77  0x7f9de4feba5a in WebCore::FrameLoader::urlSelected(WebCore::URL const&, WTF::String const&, WebCore::Event*, WebCore::LockHistory, WebCore::LockBackForwardList, WebCore::ShouldSendReferrer, WebCore::ShouldOpenExternalURLsPolicy) from /lib64/libQt5WebKit.so.5+0x3fa
#78  /lib64/libQt5WebKit.so.5(+0x11feeb5) [0x7f9de4b9feb5]
#79  /lib64/libQt5WebKit.so.5(+0x1354c5a) [0x7f9de4cf5c5a]
#80  /lib64/libQt5WebKit.so.5(+0x13531b2) [0x7f9de4cf41b2]
#81  /lib64/libQt5WebKit.so.5(+0x16e6f69) [0x7f9de5087f69]
#82  0x7f9de508cd69 in WebCore::EventHandler::handleMouseReleaseEvent(WebCore::PlatformMouseEvent const&) from /lib64/libQt5WebKit.so.5+0x529
#83  0x7f9de3f71de6 in QWebPageAdapter::mouseReleaseEvent(QMouseEvent*) from /lib64/libQt5WebKit.so.5+0x76
#84  0x7f9de6a627eb in QWebPage::event(QEvent*) from /lib64/libQt5WebKitWidgets.so.5+0x96b
#85  0x7f9de6a63754 in QWebView::mouseReleaseEvent(QMouseEvent*) from /lib64/libQt5WebKitWidgets.so.5+0x24
#86  0x7f9e188e734e in QWidget::event(QEvent*) from /lib64/libQt5Widgets.so.5+0x24e
#87  0x7f9de6a64ea3 in QWebView::event(QEvent*) from /lib64/libQt5WebKitWidgets.so.5+0x63
#88  0x7f9e188a4ad6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib64/libQt5Widgets.so.5+0x86
#89  0x7f9e188ae3a3 in QApplication::notify(QObject*, QEvent*) from /lib64/libQt5Widgets.so.5+0x583
#90  0x7f9e19b4a4e8 in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/lib64/freecad/lib/libFreeCADGui.so+0x88
#91  0x7f9e1847bde8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib64/libQt5Core.so.5+0x88
#92  0x7f9e188ad4b7 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) from /lib64/libQt5Widgets.so.5+0x1b7
#93  /lib64/libQt5Widgets.so.5(+0x1ce0dd) [0x7f9e189030dd]
#94  /lib64/libQt5Widgets.so.5(+0x1d0f6c) [0x7f9e18905f6c]
#95  0x7f9e188a4ad6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /lib64/libQt5Widgets.so.5+0x86
#96  0x7f9e188ae150 in QApplication::notify(QObject*, QEvent*) from /lib64/libQt5Widgets.so.5+0x330
#97  0x7f9e19b4a4e8 in Gui::GUIApplication::notify(QObject*, QEvent*) from /usr/lib64/freecad/lib/libFreeCADGui.so+0x88
#98  0x7f9e1847bde8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /lib64/libQt5Core.so.5+0x88
#99  0x7f9e1682c723 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) from /lib64/libQt5Gui.so.5+0x6f3
#100  0x7f9e1682df4b in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /lib64/libQt5Gui.so.5+0x26b
#101  0x7f9e1680a54b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib64/libQt5Gui.so.5+0xbb
#102  /lib64/libQt5WaylandClient.so.5(+0x92564) [0x7f9e06026564]
#103  /lib64/libglib-2.0.so.0(g_main_context_dispatch+0x160) [0x7f9e15e5d4a0]
#104  /lib64/libglib-2.0.so.0(+0x51830) [0x7f9e15e5d830]
#105  /lib64/libglib-2.0.so.0(g_main_context_iteration+0x33) [0x7f9e15e5d8d3]
#106  0x7f9e184d0cb5 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /lib64/libQt5Core.so.5+0x65
#107  0x7f9e1847aceb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /lib64/libQt5Core.so.5+0x12b
#108  0x7f9e18482a16 in QCoreApplication::exec() from /lib64/libQt5Core.so.5+0x96
#109  0x7f9e19ad13a5 in Gui::Application::runApplication() from /usr/lib64/freecad/lib/libFreeCADGui.so+0x16f5
#110  FreeCAD(main+0x6a6) [0x558a32cb4be6]
#111  /lib64/libc.so.6(__libc_start_main+0xf3) [0x7f9e17e5f1a3]
#112  FreeCAD(_start+0x2e) [0x558a32cb4f4e]


Expected results: working program


Additional info:

Comment 1 Richard Shaw 2019-11-22 15:52:54 UTC
Please try this update first, but also worth mentioning is FreeCAD doesn't work well with Wayland yet so try switching to Xorg as well.

https://bodhi.fedoraproject.org/updates/FEDORA-2019-fa74042038

Comment 2 Przemek Klosowski 2019-11-23 03:54:41 UTC
XDG_SESSION_TYPE=x11 FreeCAD

results in a similar segv , in what looks like Python infrastructure.

Using your 0.18.4-2, I see that Wayland doesn't work at all (coredumps with missing GL context).
The proffered advice of setting COIN_GL_NO_CURRENT_CONTEXT_CHECK=1 FreeCAD does NOT work.

However, it works with XDG_SESSION_TYPE=x11 FreeCAD

Comment 3 Fedora Update System 2019-12-18 01:25:36 UTC
Coin4-4.0.0-4.fc31, freecad-0.18.4-3.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-e935331fe6

Comment 4 Fedora Update System 2019-12-18 02:08:50 UTC
Coin4-4.0.0-4.fc30, freecad-0.18.4-3.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-3d88bddf00

Comment 5 Fedora Update System 2019-12-18 09:58:40 UTC
FEDORA-2019-e935331fe6 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-e935331fe6

Comment 6 Fedora Update System 2020-01-04 22:15:02 UTC
Coin4-4.0.0-4.fc30, freecad-0.18.4-3.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.

Comment 7 Fedora Update System 2020-01-05 00:40:18 UTC
Coin4-4.0.0-4.fc31, freecad-0.18.4-3.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.