Bug report #14152
Form annotation crashs QGIS with Segmentation fault (core dumped)
Status: | Closed | ||
---|---|---|---|
Priority: | Severe/Regression | ||
Assignee: | Martin Dobias | ||
Category: | Map Tools | ||
Affected QGIS version: | master | Regression?: | No |
Operating System: | Easy fix?: | No | |
Pull Request or Patch supplied: | No | Resolution: | |
Crashes QGIS or corrupts data: | No | Copied to github as #: | 22154 |
Description
Trying to use Form annotation, once you select a ui file and press OK, QGIS master crashes.
This works fine in QGIS 2.8.6 following Tim Sutton instructions here:
[[https://youtu.be/0pDBuSbQ02o?t=2m25s]]
You can try to replicate the bug using the annotation_form_example.ui file with the Regions Layer of the QGIS Sample Data (Alaska Dataset). Both in attachment.
- Add Region Layer to QGIS and make it active
- Using the form annotation tool, click over a region polygon
- Double-click the created annotation to access setting
- Select the annotation_form_example.ui and press OK
If everything went well, the form should appear inside the annotation.
Instead, QGIS exits with Segmentation fault (core dumped)
But instead QGIS crashes with the followin message:
Related issues
History
#1 Updated by Martin Dobias almost 9 years ago
I cannot replicate unfortunately. Could you please try to generate backtrace? (i.e. run in gdb, when it crashes type "bt" and copy the output here).
#2 Updated by Martin Dobias almost 9 years ago
- Status changed from Open to Feedback
#3 Updated by Alexandre Neto almost 9 years ago
- Assignee set to Martin Dobias
I have used gdb and I got this:
Program received signal SIGSEGV, Segmentation fault. 0x00007ffff7a06248 in QFormInternal::domPropertyToVariant(QFormInternal::QAbstractFormBuilder*, QMetaObject const*, QFormInternal::DomProperty const*) () from /usr/lib/libqgis_app.so.2.13.0
After tying bt I got this:
#0 0x00007ffff7a06248 in QFormInternal::domPropertyToVariant(QFormInternal::QAbstractFormBuilder*, QMetaObject const*, QFormInternal::DomProperty const*) () from /usr/lib/libqgis_app.so.2.13.0 #1 0x00007ffff79b5009 in QFormInternal::QAbstractFormBuilder::toVariant(QMetaObject const*, QFormInternal::DomProperty*) () from /usr/lib/libqgis_app.so.2.13.0 #2 0x00007ffff79ce542 in QFormInternal::QFormBuilder::applyProperties(QObject*, QList<QFormInternal::DomProperty*> const&) () from /usr/lib/libqgis_app.so.2.13.0 #3 0x00007ffff79b0401 in QFormInternal::FormBuilderPrivate::applyProperties(QObject*, QList<QFormInternal::DomProperty*> const&) () from /usr/lib/libqgis_app.so.2.13.0 #4 0x00007ffff79bc460 in QFormInternal::QAbstractFormBuilder::create(QFormInternal::DomWidget*, QWidget*) () from /usr/lib/libqgis_app.so.2.13.0 #5 0x00007ffff79cf361 in QFormInternal::QFormBuilder::create(QFormInternal::DomWidget*, QWidget*) () from /usr/lib/libqgis_app.so.2.13.0 #6 0x00007ffff79b0abe in QFormInternal::FormBuilderPrivate::create(QFormInternal::DomWidget*, QWidget*) () from /usr/lib/libqgis_app.so.2.13.0 #7 0x00007ffff79be6d3 in QFormInternal::QAbstractFormBuilder::create(QFormInternal::DomUI*, QWidget*) () from /usr/lib/libqgis_app.so.2.13.0 #8 0x00007ffff79b0a58 in QFormInternal::FormBuilderPrivate::create(QFormInternal::DomUI*, QWidget*) () from /usr/lib/libqgis_app.so.2.13.0 #9 0x00007ffff702b041 in QFormInternal::QAbstractFormBuilder::load(QIODevice*, ---Type <return> to continue, or q <return> to quit--- QWidget*) () from /usr/lib/libqgis_gui.so.2.13.0 #10 0x00007ffff7023322 in QUiLoader::load(QIODevice*, QWidget*) () from /usr/lib/libqgis_gui.so.2.13.0 #11 0x00007ffff6f2c3fd in QgsFormAnnotationItem::createDesignerWidget (this= 0x1476d30, filePath=...) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/gui/qgsformannotationitem.cpp:87 #12 0x00007ffff6f2c24a in QgsFormAnnotationItem::setDesignerForm ( this=0x1476d30, uiFile=...) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/gui/qgsformannotationitem.cpp:67 #13 0x00007ffff766f04b in QgsFormAnnotationDialog::applySettingsToItem ( this=0x765c6a0) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/app/qgsformannotationdialog.cpp:57 #14 0x00007ffff7995b0d in QgsFormAnnotationDialog::qt_static_metacall ( _o=0x765c6a0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffffffb550) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/debian/build/src/app/moc_qgsformannotationdialog.cxx:52 #15 0x00007ffff5c6987a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #16 0x00007ffff5c6987a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 ---Type <return> to continue, or q <return> to quit--- #17 0x00007ffff563d172 in QAbstractButton::clicked(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #18 0x00007ffff53a0a63 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #19 0x00007ffff53a1bd3 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #20 0x00007ffff53a1cbc in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #21 0x00007ffff503e51a in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #22 0x00007ffff4feee2c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #23 0x00007ffff4ff55dd in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #24 0x00007ffff62890d1 in QgsApplication::notify (this=0x7fffffffd950, receiver=0x73a3220, event=0x7fffffffbc30) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/core/qgsapplication.cpp:281 #25 0x00007ffff5c554dd in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #26 0x00007ffff4ff4d93 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #27 0x00007ffff50699eb in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #28 0x00007ffff5069289 in QApplication::x11ProcessEvent(_XEvent*) () ---Type <return> to continue, or q <return> to quit--- from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #29 0x00007ffff5090b32 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #30 0x00007fffeddf6e04 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #31 0x00007fffeddf7048 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #32 0x00007fffeddf70ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #33 0x00007ffff5c827be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #34 0x00007ffff5090be6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #35 0x00007ffff5c540af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #36 0x00007ffff5c543a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #37 0x00007ffff549606c in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #38 0x00007ffff772e000 in QgsMapToolAnnotation::canvasDoubleClickEvent (this= 0x12900f0, e=0x779ee00) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/app/qgsmaptoolannotation.cpp:255 #39 0x00007ffff6f5a973 in QgsMapCanvas::mouseDoubleClickEvent (this=0xed7130, e=0x7fffffffc9e0) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/gui/qgsmapcanvas---Type <return> to continue, or q <return> to quit--- .cpp:1287 #40 0x00007ffff503e65e in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #41 0x00007ffff53e004e in QFrame::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #42 0x00007ffff55eb859 in QGraphicsView::viewportEvent(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #43 0x00007ffff5c55646 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #44 0x00007ffff4feee0c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #45 0x00007ffff4ff55dd in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #46 0x00007ffff62890d1 in QgsApplication::notify (this=0x7fffffffd950, receiver=0xec8620, event=0x7fffffffc9e0) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/core/qgsapplication.cpp:281 #47 0x00007ffff5c554dd in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #48 0x00007ffff4ff4d93 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #49 0x00007ffff50699eb in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 ---Type <return> to continue, or q <return> to quit--- #50 0x00007ffff5069289 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #51 0x00007ffff5090b32 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #52 0x00007fffeddf6e04 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #53 0x00007fffeddf7048 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #54 0x00007fffeddf70ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #55 0x00007ffff5c827a1 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #56 0x00007ffff5090be6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4 #57 0x00007ffff5c540af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #58 0x00007ffff5c543a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #59 0x00007ffff5c59b79 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4 #60 0x0000000000409ac0 in main (argc=1, argv=0x7fffffffdcc8) at /tmp/buildd/qgis-2.13.0+git20160124+ae52aab+20trusty/src/app/main.cpp:1226
#4 Updated by Martin Dobias almost 9 years ago
This looks like a duplicate of #8760 - crash within Qt in QUiLoader::load
#5 Updated by Martin Dobias almost 9 years ago
Alexandre, could you please confirm whether you get a crash also if you try to use that .ui file for attribute form? In such case we could close this one as a duplicate of #8760
#6 Updated by Alexandre Neto almost 9 years ago
- Status changed from Feedback to Closed
You are right, this is a duplication. I will close it and move the discussion to #8760.