View Issue Details

IDProjectCategoryView StatusLast Update
0000915FreeCADBugpublic2012-12-20 18:36
Reporterprokoudine Assigned To 
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionno change required 
Summary0000915: FreeCAD crashes during alignment
DescriptionWhenever I pick two object and activate Alignment tool, FreeCAD crashes. Backtrace from gdb below.
Additional Information(gdb) bt
#0 0x00007fffdc8739ba in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#1 0x00007fffdc721482 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
0000002 0x00007fffdc724ec2 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
0000003 0x00007ffff005b132 in SoGLDisplayList::call(SoState*, int) () from /usr/lib/libCoin.so.60
0000004 0x00007ffff001e2f2 in SoGLCacheList::call(SoGLRenderAction*) () from /usr/lib/libCoin.so.60
0000005 0x00007ffff01f5dc1 in SoSeparator::GLRenderBelowPath(SoGLRenderAction*) () from /usr/lib/libCoin.so.60
0000006 0x00007ffff01f5ef9 in SoSeparator::GLRenderBelowPath(SoGLRenderAction*) () from /usr/lib/libCoin.so.60
0000007 0x00007ffff01e21cf in SoNode::GLRenderS(SoAction*, SoNode*) () from /usr/lib/libCoin.so.60
0000008 0x00007fffeffc74a5 in SoAction::traverse(SoNode*) () from /usr/lib/libCoin.so.60
0000009 0x00007ffff010c03c in SoChildList::traverse(SoAction*, int, int) () from /usr/lib/libCoin.so.60
0000010 0x00007ffff01f9e1f in SoSwitch::doAction(SoAction*) () from /usr/lib/libCoin.so.60
0000011 0x00007ffff01f5ef9 in SoSeparator::GLRenderBelowPath(SoGLRenderAction*) () from /usr/lib/libCoin.so.60
0000012 0x00007ffff01f5ef9 in SoSeparator::GLRenderBelowPath(SoGLRenderAction*) () from /usr/lib/libCoin.so.60
0000013 0x00007ffff01f5ef9 in SoSeparator::GLRenderBelowPath(SoGLRenderAction*) () from /usr/lib/libCoin.so.60
0000014 0x00007ffff01f5ef9 in SoSeparator::GLRenderBelowPath(SoGLRenderAction*) () from /usr/lib/libCoin.so.60
0000015 0x00007ffff01e21cf in SoNode::GLRenderS(SoAction*, SoNode*) () from /usr/lib/libCoin.so.60
0000016 0x00007fffeffc74a5 in SoAction::traverse(SoNode*) () from /usr/lib/libCoin.so.60
0000017 0x00007fffeffcf7e3 in SoGLRenderAction::beginTraversal(SoNode*) () from /usr/lib/libCoin.so.60
0000018 0x00007fffeffcf014 in SoGLRenderActionP::renderSingle(SoNode*) () from /usr/lib/libCoin.so.60
0000019 0x00007fffeffcf65a in SoGLRenderActionP::render(SoNode*) () from /usr/lib/libCoin.so.60
0000020 0x00007fffeffcf8a6 in SoGLRenderAction::beginTraversal(SoNode*) () from /usr/lib/libCoin.so.60
0000021 0x00007fffeffc7ce2 in SoAction::apply(SoNode*) () from /usr/lib/libCoin.so.60
0000022 0x00007ffff55fb5a9 in Gui::SoBoxSelectionRenderAction::apply (this=0x40dfe90, node=0x40c2970) at SoFCSelectionAction.cpp:1010
0000023 0x00007ffff0196a9a in SoRenderManager::renderScene(SoGLRenderAction*, SoNode*, unsigned int) () from /usr/lib/libCoin.so.60
0000024 0x00007ffff0197a4f in SoRenderManager::actuallyRender(SoGLRenderAction*, int, int, int) () from /usr/lib/libCoin.so.60
0000025 0x00007ffff0197c0a in SoRenderManager::renderSingle(SoGLRenderAction*, int, int, int) () from /usr/lib/libCoin.so.60
0000026 0x00007ffff0198345 in SoRenderManager::render(SoGLRenderAction*, int, int, int) () from /usr/lib/libCoin.so.60
0000027 0x00007ffff019626d in SoRenderManager::render(int, int) () from /usr/lib/libCoin.so.60
0000028 0x00007ffff0b74aef in SoQtViewer::actualRedraw() () from /usr/lib/libSoQt4.so.20
0000029 0x00007ffff5632a57 in Gui::View3DInventorViewer::actualRedraw (this=0x40a1310) at View3DInventorViewer.cpp:903
0000030 0x00007ffff0b49952 in SoQtRenderArea::redraw() () from /usr/lib/libSoQt4.so.20
0000031 0x00007ffff026429a in SoSensorManager::processDelayQueue(int) () from /usr/lib/libCoin.so.60
0000032 0x00007ffff0262d7e in SoSensorManager::processTimerQueue() () from /usr/lib/libCoin.so.60
0000033 0x00007ffff0b43471 in SoQtP::slot_idleSensor() () from /usr/lib/libSoQt4.so.20
0000034 0x00007ffff0b4351c in SoQtP::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libSoQt4.so.20
---Type <return> to continue, or q <return> to quit---
0000035 0x00007ffff7a97123 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000036 0x00007ffff7a9626c in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000037 0x00007ffff6e28e9c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
0000038 0x00007ffff6e2d30a in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#39 0x00007ffff54845af in Gui::GUIApplication::notify (this=0x7fffffffd970, receiver=0x2e31250, event=0x7fffffffd3c0) at Application.cpp:1486
#40 0x00007ffff7a8156e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000041 0x00007ffff7ab2462 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000042 0x00007ffff7aaf584 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000043 0x00007ffff40acab5 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000044 0x00007ffff40acde8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000045 0x00007ffff40acea4 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
0000046 0x00007ffff7aafbf6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
   from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000047 0x00007ffff6ecdc1e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
0000048 0x00007ffff7a802bf in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000049 0x00007ffff7a80548 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000050 0x00007ffff7a85708 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
0000051 0x00007ffff5481c3b in Gui::Application::runApplication () at Application.cpp:1729
0000052 0x0000000000403e93 in main (argc=1, argv=<optimized out>) at MainGui.cpp:300
TagsNo tags attached.
FreeCAD Information

Activities

prokoudine

2012-12-15 23:28

reporter   ~0002643

Oh, btw, this is current Git master.

normandc

2012-12-16 08:22

manager   ~0002644

Running the nouveau driver? You get 3D acceleration with that?!? Never could with any of the 3 Nvidia card I've had: GF 8600 GTS, GF 9800 GT and now GTX 650 Ti.

Also, the Help --> About FreeCAD menu has a "Copy to clipboard" button that gives very detailed info about your system and FreeCAD install.

prokoudine

2012-12-16 11:04

reporter   ~0002645

Not sure how helpful this info is:

OS: Ubuntu 12.10
Platform: 64-bit
Version: 0.13.1766 (Git)
Branch: master
Hash: d60fc3e0bb13f57fa5691876a29ac21884305c99
Python version: 2.7.3
Qt version: 4.8.3
Coin version: 3.1.3
SoQt version: 1.5.0
OCC version: 6.5.0

But I hope you will agree that FreeCAD should never crash :)

jmaustpc

2012-12-17 10:18

manager   ~0002647

Hi guys
The Alignment tool is working for me in Kubuntu 12.04.1 etc. see below.

Regarding nouveau drivers, it entirely depends on your GPU chip. On my old work station GPU fx1400 I think its equivalent to about a 6600 or 6800 in the non work station GPU line, nouveau is far superior in stability and features to the Nvidia driver, Nvidia don't bother to support my old GPU of course. The nouvea driver supports a newer version of GL than the last Nvidia driver available via Ubuntu's driver utility for my GPU.





OS: Ubuntu 12.04.1 LTS
Platform: 64-bit
Version: 0.13.1768 (Git)
Branch: master
Hash: 4344df8595c6509271a16e989c78095f66dba3c2
Python version: 2.7.3
Qt version: 4.8.1
Coin version: 3.1.3
SoQt version: 1.5.0
OCC version: 6.5.0

wmayer

2012-12-17 19:31

administrator   ~0002654

I guess this is an issue with the nouveau driver because this is also the very last call in your backtrace. I'm using the proprietary nvidia drivers and everything is fine.

yorik

2012-12-18 15:03

administrator   ~0002661

I can make this crash happen too... It seems to depend on the object type.
If I try to align 2 Part boxes, or 2 Draft rectangles, or 2 extruded Draft rectangles, it works. When trying to align 2 Arch walls, it crashes with:

freecad: /home/yorik/Documents/Sources/FreeCAD/src/Base/BaseClass.cpp:115: virtual PyObject* Base::BaseClass::getPyObject(): Assertion `0' failed.
Aborted

No reference to 3D driver in backtrace:
(gdb) bt
#0 0x00007fffeee70475 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007fffeee736f0 in abort () from /lib/x86_64-linux-gnu/libc.so.6
0000002 0x00007fffeee69621 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6
0000003 0x00007ffff69e22c3 in Base::BaseClass::getPyObject() ()
   from /home/yorik/Apps/FreeCAD/lib/libFreeCADBase.so
0000004 0x00007ffff74edbc1 in Gui::DocumentPy::getActiveView() const ()
   from /home/yorik/Apps/FreeCAD/lib/libFreeCADGui.so
0000005 0x00007ffff74ea45d in Gui::DocumentPy::staticCallback_getActiveView(_object*, void*) () from /home/yorik/Apps/FreeCAD/lib/libFreeCADGui.so
0000006 0x00007ffff65350ba in _PyObject_GenericGetAttrWithDict ()
   from /usr/lib/libpython2.7.so.1.0
0000007 0x00007ffff6a38cae in Base::PyObjectBase::_getattr(char*) ()
   from /home/yorik/Apps/FreeCAD/lib/libFreeCADBase.so
0000008 0x00007ffff69e31ef in Base::BaseClassPy::_getattr(char*) ()

wmayer

2012-12-19 10:13

administrator   ~0002666

git show d51ff46 fixes the crash with Arch walls. But this is very likely something completely different to the crash reported by the OP.

Jriegel

2012-12-20 18:36

administrator   ~0002685

Another driver issue. Nothing we can do about it....

Issue History

Date Modified Username Field Change
2012-12-15 23:27 prokoudine New Issue
2012-12-15 23:28 prokoudine Note Added: 0002643
2012-12-16 08:22 normandc Note Added: 0002644
2012-12-16 11:04 prokoudine Note Added: 0002645
2012-12-17 10:18 jmaustpc Note Added: 0002647
2012-12-17 19:31 wmayer Note Added: 0002654
2012-12-18 15:03 yorik Note Added: 0002661
2012-12-19 10:13 wmayer Note Added: 0002666
2012-12-20 18:36 Jriegel Note Added: 0002685
2012-12-20 18:36 Jriegel Status new => closed
2012-12-20 18:36 Jriegel Resolution open => no change required