Bug report #15603

regression: changing a composer sheet background style/color crashes QGIS

Added by Mathieu Pellerin - nIRV about 5 years ago. Updated about 5 years ago.

Status:Closed
Priority:Severe/Regression
Assignee:Nyall Dawson
Category:Map Composer/Printing
Affected QGIS version:master Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:fixed/implemented
Crashes QGIS or corrupts data:Yes Copied to github as #:23526

Description

Just noticed QGIS master (2.99) is now crashing when attempting to change the background style of a composer sheet.

Steps to reproduce
  1. Create a new project
  2. Create a new composer
  3. In the / Composition \\ tab, click on the page background's [ change ] button
  4. Change the fill color, and click on [ OK ]
  5. boom QGIS dies

gdb output

#6  0x00007ffff6a51609 in QScopedPointerDeleter<QgsExpressionContext>::cleanup (pointer=0x7fffffffc050) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:54
#7  0x00007ffff6a51425 in QScopedPointer<QgsExpressionContext, QScopedPointerDeleter<QgsExpressionContext> >::~QScopedPointer (this=0x55555ccabdf0, 
    __in_chrg=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qscopedpointer.h:101
#8  0x00007ffff6a4bc50 in QgsSymbolSelectorWidget::~QgsSymbolSelectorWidget (this=0x55555ccabcd0, __in_chrg=<optimized out>)
    at /home/webmaster/dev/cpp/QGIS/src/gui/symbology-ng/qgssymbolselectordialog.cpp:267
#9  0x00007ffff6a4bc90 in QgsSymbolSelectorWidget::~QgsSymbolSelectorWidget (this=0x55555ccabcd0, __in_chrg=<optimized out>)
    at /home/webmaster/dev/cpp/QGIS/src/gui/symbology-ng/qgssymbolselectordialog.cpp:269
#10 0x00007ffff4ba1051 in QObjectPrivate::deleteChildren() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007ffff54f1e58 in QWidget::~QWidget() () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#12 0x00007ffff6a4e120 in QgsSymbolSelectorDialog::~QgsSymbolSelectorDialog (this=0x7fffffffc070, __in_chrg=<optimized out>)
    at /home/webmaster/dev/cpp/QGIS/src/gui/symbology-ng/qgssymbolselectordialog.cpp:698
#13 0x00007ffff7867e7b in QgsCompositionWidget::on_mPageStyleButton_clicked (this=0x55555c8388f0)
    at /home/webmaster/dev/cpp/QGIS/src/app/composer/qgscompositionwidget.cpp:575
#14 0x00007ffff7904e3c in QgsCompositionWidget::qt_static_metacall (_o=0x55555c8388f0, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0x7fffffffc270)
    at /home/webmaster/dev/cpp/QGIS/bm-qt5/src/app/composer/moc_qgscompositionwidget.cpp:180
#15 0x00007ffff790516e in QgsCompositionWidget::qt_metacall (this=0x55555c8388f0, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0x7fffffffc270)
    at /home/webmaster/dev/cpp/QGIS/bm-qt5/src/app/composer/moc_qgscompositionwidget.cpp:239
#16 0x00007ffff4ba2877 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#17 0x00007ffff55af802 in QAbstractButton::clicked(bool) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#18 0x00007ffff55afa54 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#19 0x00007ffff55b0c17 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#20 0x00007ffff55b0df4 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007ffff54f6498 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007ffff54b08ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007ffff54b6c07 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#24 0x00007ffff5d56e85 in QgsApplication::notify (this=0x7fffffffd9f0, receiver=0x55555c8e0ef0, event=0x7fffffffc7f0)
    at /home/webmaster/dev/cpp/QGIS/src/core/qgsapplication.cpp:283
#25 0x00007ffff4b753b0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#26 0x00007ffff54b52d5 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
   from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007ffff5510ad6 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007ffff55136d3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#29 0x00007ffff54b08ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5

History

#1 Updated by Mathieu Pellerin - nIRV about 5 years ago

  • Resolution set to fixed/implemented
  • Status changed from Open to Closed

The merging of this PR (https://github.com/qgis/QGIS/pull/3536) fixed the issue, closing. Thanks Nyall.

Also available in: Atom PDF