View Issue Details

IDProjectCategoryView StatusLast Update
0004134PartBugpublic2020-04-04 11:23
Reportercbruner Assigned To 
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionno change required 
Summary0004134: double clicking Part-o-Magic crashes system
Descriptiondouble clicking partomagic crashes system
Steps To ReproduceCreate New
select part workbench
double click the yellow sales tag
*crash*
Additional InformationOS: Linux Mint 19.2
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.16131 (Git) AppImage
Build type: Release
Branch: (HEAD detached at 0.18.3)
Hash: 3129ae4296e40ed20e7b3d460b86e6969acbe1c3
Python version: 3.6.7
Qt version: 5.6.2
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/Canada (en_CA)
Tags#tobeclosed
FreeCAD Information

Activities

Kunda1

2019-09-17 20:50

administrator   ~0013618

Part-o-magic is an external workbench and the bug should be reported to the developer directly. I'd usually close this bug but I won't since you went to the effort of filling out a report. But in the future, @cbruner please familiarize yourself with out bugtracker guidelines (the ugly yellow banner at the top of the page) and post your issues to the FreeCAD forum first to confirm the problem.

Kunda1

2019-09-17 20:53

administrator   ~0013619

I can't reproduce on
OS: Manjaro Linux
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.16131 (Git)
Build type: Release
Branch: makepkg
Hash: 3129ae4296e40ed20e7b3d460b86e6969acbe1c3
Python version: 3.7.3
Qt version: 5.13.0
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/United States (en_US)

Kunda1

2019-09-17 21:28

administrator   ~0013620

@cbruner can you start FreeCAD from the CLI and see what error it outputs when you recreate the bug ?

cbruner

2019-09-18 05:20

reporter   ~0013624

I did this and noticed some start up Guini.py code was complaining. So started fresh. (removed .FreeCad and piptools/develop module).

Could not recreate at first, then realized I hadn't installed partomagic. So I installed that (and FCGear) and was able to recreate it.
error.txt (11,285 bytes)   
Traceback (most recent call last):
  File "/home/chris/.FreeCAD/Mod/Part-o-magic/PartOMagic/Gui/Observer.py", line 123, in slotDeletedObject
    self.poll()
  File "/home/chris/.FreeCAD/Mod/Part-o-magic/PartOMagic/Gui/Observer.py", line 236, in poll
    self.trackActiveContainer()
  File "/home/chris/.FreeCAD/Mod/Part-o-magic/PartOMagic/Gui/Observer.py", line 281, in trackActiveContainer
    self.activeContainerChanged(last_ac, ac)
  File "/home/chris/.FreeCAD/Mod/Part-o-magic/PartOMagic/Gui/Observer.py", line 188, in activeContainerChanged
    self.leaveContainer(cnt)
  File "/home/chris/.FreeCAD/Mod/Part-o-magic/PartOMagic/Gui/Observer.py", line 363, in leaveContainer
    tv = self.TVs[key]
<class 'KeyError'>: 'Unnamed.Part002'
Program received signal SIGSEGV, Segmentation fault.
#0  /lib/x86_64-linux-gnu/libc.so.6(+0x3ef20) [0x7f8a47f67f20]
#1  0x7f8a4da08869 in App::GroupExtension::recursiveHasObject(App::DocumentObject const*, App::GroupExtension const*, std::vector<App::GroupExtension const*, std::allocator<App::GroupExtension const*> >) const from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x49
#2  0x7f8a4da08ae2 in App::GroupExtension::recursiveHasObject(App::DocumentObject const*, App::GroupExtension const*, std::vector<App::GroupExtension const*, std::allocator<App::GroupExtension const*> >) const from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x2c2
#3  0x7f8a4da08eb0 in App::GroupExtension::hasObject(App::DocumentObject const*, bool) const from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x1a0
#4  0x7f8a4e3e5476 in Gui::ViewProviderOriginGroupExtension::slotChangedObjectApp(App::DocumentObject const&) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x36
#5  0x7f8a4d9f1b06 in boost::signals2::detail::signal_impl<void (App::DocumentObject const&, App::Property const&), boost::signals2::optional_last_value<void>, int, std::less<int>, boost::function<void (App::DocumentObject const&, App::Property const&)>, boost::function<void (boost::signals2::connection const&, App::DocumentObject const&, App::Property const&)>, boost::signals2::mutex>::operator()(App::DocumentObject const&, App::Property const&) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x1f6
#6  0x7f8a4d9fe761 in App::DocumentObject::onChanged(App::Property const*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x21
#7  0x7f8a4da76959 in App::Property::hasSetValue() from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x19
#8  0x7f8a4da8cc79 in App::PropertyLinkList::setValues(std::vector<App::DocumentObject*, std::allocator<App::DocumentObject*> > const&) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0xb9
#9  0x7f8a4d9bd36a in App::Document::breakDependency(App::DocumentObject*, bool) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x58a
#10  0x7f8a4d9c3ec1 in App::Document::_removeObject(App::DocumentObject*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x111
#11  0x7f8a4da5db5f in App::TransactionDocumentObject::applyDel(App::Document&, App::TransactionalObject*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x5f
#12  0x7f8a4da5e031 in App::Transaction::apply(App::Document&, bool) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x31
#13  0x7f8a4d9c1eb2 in App::Document::abortTransaction() from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x22
#14  0x7f8a4da2d2eb in App::DocumentPy::abortTransaction(_object*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x2b
#15  0x7f8a4da2d327 in App::DocumentPy::staticCallback_abortTransaction(_object*, _object*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADApp.so+0x27
#16  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyCFunction_FastCallDict+0x18e) [0x7f8a4d050c1e]
#17  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(+0x1650da) [0x7f8a4d0ea0da]
#18  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x3002) [0x7f8a4d0ed902]
#19  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(+0x164370) [0x7f8a4d0e9370]
#20  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyFunction_FastCallDict+0x2c6) [0x7f8a4d0f3196]
#21  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyObject_FastCallDict+0x17e) [0x7f8a4cff7afe]
#22  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyObject_Call_Prepend+0xce) [0x7f8a4cff7bee]
#23  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyObject_FastCallDict+0x8b) [0x7f8a4cff7a0b]
#24  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(PyObject_CallFunctionObjArgs+0xd2) [0x7f8a4cff8e82]
#25  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x49dc) [0x7f8a4d0ef2dc]
#26  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(+0x164370) [0x7f8a4d0e9370]
#27  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(+0x165294) [0x7f8a4d0ea294]
#28  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x3002) [0x7f8a4d0ed902]
#29  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(+0x164cde) [0x7f8a4d0e9cde]
#30  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(+0x164ff2) [0x7f8a4d0e9ff2]
#31  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x1246) [0x7f8a4d0ebb46]
#32  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(+0x164370) [0x7f8a4d0e9370]
#33  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyFunction_FastCallDict+0x2c6) [0x7f8a4d0f3196]
#34  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyObject_FastCallDict+0x17e) [0x7f8a4cff7afe]
#35  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(_PyObject_Call_Prepend+0xce) [0x7f8a4cff7bee]
#36  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libpython3.6m.so.1.0(PyObject_Call+0x6a) [0x7f8a4cff78aa]
#37  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADBase.so(PP_Run_Method+0xd7) [0x7f8a4d5fa877]
#38  0x7f8a4d5840f9 in Base::InterpreterSingleton::runMethodVoid(_object*, char const*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADBase.so+0x29
#39  0x7f8a4e1c6dbe in Gui::PythonCommand::activated(int) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x3e
#40  0x7f8a4e1ca14c in Gui::Command::invoke(int) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x4c
#41  0x7f8a4e1ca773 in Gui::PythonGroupCommand::activated(int) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x383
#42  0x7f8a4e1ca14c in Gui::Command::invoke(int) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x4c
#43  0x7f8a4e1b7ca3 in Gui::ActionGroup::onActivated() from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x33
#44  0x7f8a491428d1 in QMetaObject::activate(QObject*, int, int, void**) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Core.so.5+0x2c1
#45  0x7f8a49abd372 in QAction::triggered(bool) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x32
#46  0x7f8a49ac009d in QAction::activate(QAction::ActionEvent) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x5d
#47  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5(+0x25952d) [0x7f8a49bc252d]
#48  0x7f8a49bc2664 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0xd4
#49  0x7f8a49c8964a in QToolButton::mouseReleaseEvent(QMouseEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0xa
#50  0x7f8a49b0973a in QWidget::event(QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x96a
#51  0x7f8a49c89729 in QToolButton::event(QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x69
#52  0x7f8a49ac6c6c in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x9c
#53  0x7f8a49acbb5d in QApplication::notify(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0xc6d
#54  0x7f8a4e1a1371 in Gui::GUIApplication::notify(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x41
#55  0x7f8a49118425 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Core.so.5+0x75
#56  0x7f8a49aca860 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x1a0
#57  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5(+0x1b9cd1) [0x7f8a49b22cd1]
#58  /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5(+0x1bc2c3) [0x7f8a49b252c3]
#59  0x7f8a49ac6c6c in QApplicationPrivate::notify_helper(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x9c
#60  0x7f8a49acb2ea in QApplication::notify(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Widgets.so.5+0x3fa
#61  0x7f8a4e1a1371 in Gui::GUIApplication::notify(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x41
#62  0x7f8a49118425 in QCoreApplication::notifyInternal2(QObject*, QEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Core.so.5+0x75
#63  0x7f8a494bc7db in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Gui.so.5+0x40b
#64  0x7f8a494bdf75 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Gui.so.5+0x115
#65  0x7f8a4949f74b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Gui.so.5+0x7b
#66  /tmp/.mount_freecavUsU2J/usr/lib/libQt5XcbQpa.so.5(+0xa05d0) [0x7f8a4153d5d0]
#67  /tmp/.mount_freecavUsU2J/usr/lib/libglib-2.0.so.0(+0x569be) [0x7f8a44c6c9be]
#68  /tmp/.mount_freecavUsU2J/usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x33) [0x7f8a44c6d826]
#69  /tmp/.mount_freecavUsU2J/usr/lib/libglib-2.0.so.0(+0x57a0b) [0x7f8a44c6da0b]
#70  /tmp/.mount_freecavUsU2J/usr/lib/libglib-2.0.so.0(g_main_context_iteration+0x4a) [0x7f8a44c6dacf]
#71  0x7f8a4916998c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Core.so.5+0x5c
#72  0x7f8a4911653b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Core.so.5+0xfb
#73  0x7f8a4911e466 in QCoreApplication::exec() from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libQt5Core.so.5+0x86
#74  0x7f8a4e13e25c in Gui::Application::runApplication() from /tmp/.mount_freecavUsU2J/usr/bin/../lib/libFreeCADGui.so+0x16bc
#75  /tmp/.mount_freecavUsU2J/usr/bin/FreeCAD(main+0x6c9) [0x403829]
#76  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x7f8a47f4ab97]
#77  /tmp/.mount_freecavUsU2J/usr/bin/FreeCAD() [0x404699]
Program received signal SIGSEGV, Segmentation fault.
/tmp/.mount_freecavUsU2J/AppRun: line 12: 24092 Segmentation fault      (core dumped) ${HERE}/usr/bin/FreeCAD "$@"
error.txt (11,285 bytes)   

Kunda1

2019-09-18 12:24

administrator   ~0013625

Thanks, I opened a ticket on the dedicated PoM repo:
https://github.com/DeepSOIC/Part-o-magic/issues/36

Kunda1

2020-03-27 13:27

administrator   ~0014304

Last edited: 2020-03-27 13:27

@cbruner
Can you test this on the AppImage? (preferably the 0.19_pre version)
This may be a packaging issue on Arch..?

cbruner

2020-03-27 15:58

reporter   ~0014307

I'm not seeing the problem anymore on this version.
OS: Linux Mint 19.3 (X-Cinnamon/cinnamon)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.20209 (Git) AppImage
Build type: Release
Branch: master
Hash: 5fc4a26a00390e91cbf91848b766b68ad87e5917
Python version: 3.8.2
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/Canada (en_CA)

cbruner

2020-03-27 16:00

reporter   ~0014308

From the command line, here are the results.
<string>:410: DeprecationWarning: an integer is required (got type PySide2.QtCore.Qt.WindowFlags). Implicit conversion to integers using __int__ is deprecated, and may be removed in a future version of Python.
<string>:410: DeprecationWarning: an integer is required (got type PySide2.QtCore.Qt.WindowType). Implicit conversion to integers using __int__ is deprecated, and may be removed in a future version of Python.
Cannot find icon: :/icons/PartDesign_Body_Create_New.svg
Cannot find icon: :/icons/PartDesign_Body_Create_New.svg
Cannot find icon: :/icons/PartOMagic_Instance.svg
container changed from None to Unnamed
created object
created object
created object
created object
created object
created object
created object
created object
container changed from Unnamed to Part
entering Part
created object
created object
created object
created object
created object
created object
created object
created object
container changed from Part to Part001
leaving Part
entering Part001

Kunda1

2020-04-04 11:00

administrator   ~0014317

I'm not seeing the problem anymore on this version.

cbruner
I think therefore we can close this ticket.

Kunda1

2020-04-04 11:23

administrator   ~0014318

As Part-o-Magic is an external workbench, please open tickets on its dedicated Github issue queue instead of this bugtracker.

Issue History

Date Modified Username Field Change
2019-09-17 06:25 cbruner New Issue
2019-09-17 20:48 Kunda1 Assigned To => DeepSOIC
2019-09-17 20:48 Kunda1 Status new => assigned
2019-09-17 20:50 Kunda1 Note Added: 0013618
2019-09-17 20:53 Kunda1 Note Added: 0013619
2019-09-17 21:28 Kunda1 Note Added: 0013620
2019-09-18 05:20 cbruner File Added: error.txt
2019-09-18 05:20 cbruner Note Added: 0013624
2019-09-18 12:24 Kunda1 Note Added: 0013625
2020-03-27 13:25 Kunda1 Summary double clicking partomagic crashes system => double clicking Part-o-Magic crashes system
2020-03-27 13:27 Kunda1 Status assigned => feedback
2020-03-27 13:27 Kunda1 Note Added: 0014304
2020-03-27 13:27 Kunda1 Note Edited: 0014304
2020-03-27 15:58 cbruner Note Added: 0014307
2020-03-27 15:58 cbruner Status feedback => assigned
2020-03-27 16:00 cbruner Note Added: 0014308
2020-04-04 11:00 Kunda1 Note Added: 0014317
2020-04-04 11:00 Kunda1 Tag Attached: #tobeclosed
2020-04-04 11:23 Kunda1 Assigned To DeepSOIC =>
2020-04-04 11:23 Kunda1 Status assigned => closed
2020-04-04 11:23 Kunda1 Resolution open => no change required
2020-04-04 11:23 Kunda1 Note Added: 0014318