Bug#978450: freecad: SEGV when editing a spreadsheet

2021-02-28 Thread Łukasz Stelmach
The problem occurs with freecad-python3 too.
-- 
Miłego dnia,
Łukasz Stelmach



Bug#978450: freecad: SEGV when editing a spreadsheet

2020-12-27 Thread Łukasz Stelmach
Package: freecad
Version: 0.18~pre1+dfsg1-5
Severity: normal

Dear Maintainer,

From time to time(!), when I press [Tab] or [Enter] to finish editing a
cell in a spreadsheet, FreeCAD receives SEGV. I am attaching three stack
dumps provided by FreeCAD.

-- System Information:
Debian Release: 10.7
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.19.0-13-amd64 (SMP w/4 CPU cores)
Locale: LANG=pl_PL.UTF-8, LC_CTYPE=pl_PL.UTF-8 (charmap=UTF-8), 
LANGUAGE=pl_PL.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages freecad depends on:
ii  freecad-python2  0.18~pre1+dfsg1-5

Versions of packages freecad recommends:
pn  calculix-ccx  
pn  graphviz  

Versions of packages freecad suggests:
pn  freecad-doc 
ii  povray  1:3.7.0.8-1
ii  python-collada  0.4-3

-- no debconf information

-- 
Miłego dnia,
Łukasz Stelmach
App::Document::recompute(): cyclic dependency detected
Program received signal SIGSEGV, Segmentation fault.
#0  /lib/x86_64-linux-gnu/libc.so.6(+0x37840) [0x7f8f41043840]
#1  0x7f8f444b0bfe in std::_Rb_tree, std::_Select1st 
>, std::less, std::allocator > >::find(Base::Type const&) const from 
/usr/lib/freecad-python2/lib/libFreeCADApp.so+0x5e
#2  0x7f8f444afcc3 in App::ExtensionContainer::hasExtension(Base::Type, bool) 
const from /usr/lib/freecad-python2/lib/libFreeCADApp.so+0x33
#3  0x7f8f444f09e8 in 
App::GeoFeatureGroupExtension::getGroupOfObject(App::DocumentObject const*) 
from /usr/lib/freecad-python2/lib/libFreeCADApp.so+0xd8
#4  0x7f8f44bace8e in 
Gui::DocumentItem::slotChangeObject(Gui::ViewProviderDocumentObject const&) 
from /usr/lib/freecad-python2/lib/libFreeCADGui.so+0x16e
#5  0x7f8f44a70476 in boost::signals2::detail::signal_impl, int, std::less, 
boost::function, boost::function, 
boost::signals2::mutex>::operator()(Gui::ViewProviderDocumentObject const&, 
App::Property const&) from /usr/lib/freecad-python2/lib/libFreeCADGui.so+0x2a6
#6  0x7f8f44a6107f in Gui::Document::slotChangedObject(App::DocumentObject 
const&, App::Property const&) from 
/usr/lib/freecad-python2/lib/libFreeCADGui.so+0xaf
#7  0x7f8f444988de in boost::signals2::detail::signal_impl, int, std::less, 
boost::function, 
boost::function, 
boost::signals2::mutex>::operator()(App::DocumentObject const&, App::Property 
const&) from /usr/lib/freecad-python2/lib/libFreeCADApp.so+0x28e
#8  0x7f8f444aa291 in App::DocumentObject::onChanged(App::Property const*) from 
/usr/lib/freecad-python2/lib/libFreeCADApp.so+0x21
#9  0x7f8f4451c605 in App::Property::touch() from 
/usr/lib/freecad-python2/lib/libFreeCADApp.so+0x35
#10  0x7f8edfecf498 in Spreadsheet::Cell::setContent(char const*) from 
/usr/lib/freecad-python2/lib/Spreadsheet.so+0xb8
#11  0x7f8edfef023f in Spreadsheet::Sheet::setCell(App::CellAddress, char 
const*) from /usr/lib/freecad-python2/lib/Spreadsheet.so+0x2f
#12  0x7f8edff02b55 in Spreadsheet::SheetPy::set(_object*) from 
/usr/lib/freecad-python2/lib/Spreadsheet.so+0x165
#13  0x7f8edff02c57 in Spreadsheet::SheetPy::staticCallback_set(_object*, 
_object*) from /usr/lib/freecad-python2/lib/Spreadsheet.so+0x37
#14  /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x7fd0) 
[0x7f8f43f07f80]
#15  /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x732) 
[0x7f8f43eff852]
#16  /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19) 
[0x7f8f43effe69]
#17  /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyRun_StringFlags+0x76) 
[0x7f8f43ed8286]
#18  0x7f8f4422cf06 in Base::InterpreterSingleton::runString[abi:cxx11](char 
const*) from /usr/lib/freecad-python2/lib/libFreeCADBase.so+0x66
#19  0x7f8f44ab6183 in Gui::Command::doCommand(Gui::Command::DoCmd_Type, char 
const*, ...) from /usr/lib/freecad-python2/lib/libFreeCADGui.so+0x133
#20  0x7f8edfba27b8 in SpreadsheetGui::SheetModel::setData(QModelIndex const&, 
QVariant const&, int) from /usr/lib/freecad-python2/lib/SpreadsheetGui.so+0x228
#21  0x7f8edfb929a7 in SpreadsheetGui::SheetView::editingFinished() from 
/usr/lib/freecad-python2/lib/SpreadsheetGui.so+0xa7
#22  0x7f8f41b2e7f6 in QMetaObject::activate(QObject*, int, int, void**) from 
/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x766
#23  0x7f8edfb8fc3e in SpreadsheetGui::LineEdit::event(QEvent*) from 
/usr/lib/freecad-python2/lib/SpreadsheetGui.so+0x11e
#24  0x7f8f424894c1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) 
from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x81
#25  0x7f8f42491911 in QApplication::notify(QObject*, QEvent*) from 
/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x11b1
#26  0x7f8f44a8bfd8 in Gui::GUIApplication::notify(QObject*, QEvent*) from 
/usr/lib/freecad-python2/lib/libFreeCADGui.so+0x88
#27  0x7f8f41b05489 in QCoreApplication::notifyInternal2(QObject*, QEvent*) 
from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x179
#28