Bug report #14152
Form annotation crashs QGIS with Segmentation fault (core dumped)
| Status: | Closed | ||
|---|---|---|---|
| Priority: | Severe/Regression | ||
| Assignee: | |||
| 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 10 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 10 years ago
- Status changed from Open to Feedback
#3
Updated by Alexandre Neto almost 10 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 10 years ago
This looks like a duplicate of #8760 - crash within Qt in QUiLoader::load
#5
Updated by Martin Dobias almost 10 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 10 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.