Bug report #18019

[Layout Report] Closing the Report Organizer panel makes QGIS crash

Added by Harrissou Santanna over 2 years ago. Updated over 2 years ago.

Status:Closed
Priority:Normal
Assignee:-
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 #:25915

Description

Took me time to find the right culprit but i think i get the smallest steps to reproduce
Open QGIS
Project menu -> New Report
close the "Report Organizer" panel
Click on the grey frame (margins?) at the left/top of the dialog --> KABOOM.

Report Details

Crash ID: 664aea6e5ee9656ee40214448f27b0c3f0901030

Stack Trace

QgsOgcUtils::rectangleToGMLBox :
QgsOgcUtils::rectangleToGMLBox :
QgsLayoutViewToolAddNodeItem::qt_static_metacall :
QWidget::event :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsOgcUtils::rectangleToGMLBox :
QCoreApplication::notifyInternal2 :
QApplicationPrivate::sendMouseEvent :
QSizePolicy::QSizePolicy :
QSizePolicy::QSizePolicy :
QApplicationPrivate::notify_helper :
QApplication::notify :
QgsOgcUtils::rectangleToGMLBox :
QCoreApplication::notifyInternal2 :
QGuiApplicationPrivate::processMouseEvent :
QWindowSystemInterface::sendWindowSystemEvents :
QEventDispatcherWin32::processEvents :
CallWindowProcW :
DispatchMessageW :
QEventDispatcherWin32::processEvents :
qt_plugin_query_metadata :
QEventLoop::exec :
QCoreApplication::exec :
QgsMapToolSelectRadius::trUtf8 :
BaseThreadInitThunk :
RtlUserThreadStart :

QGIS Info
QGIS Version: 2.99.0-Master
QGIS code revision: 3e42f808c1
Compiled against Qt: 5.9.2
Running against Qt: 5.9.2
Compiled against GDAL: 2.2.3
Running against GDAL: 2.2.3

System Info
CPU Type: x86_64
Kernel Type: winnt
Kernel Version: 10.0.16299

System Info
CPU Type: x86_64
Kernel Type: winnt
Kernel Version: 10.0.16299

Selection_294.png - crash click area (12.6 KB) Richard Duivenvoorde, 2018-02-02 08:22 PM

Associated revisions

Revision be6674b8
Added by Nyall Dawson over 2 years ago

[reports] Fix crash in designer when no layout selected

Fixes #18019

History

#1 Updated by Richard Duivenvoorde over 2 years ago

Yep, confirmed here.

Exact as Harrissou states: create new report (empty project) and click in the frame around the grey area (which I marked red in the screendump).

This is my stacktrace:

QGIS died on signal 11[New LWP 10289]
[New LWP 10290]
[New LWP 10291]
[New LWP 10292]
[New LWP 10293]
[New LWP 10294]
[New LWP 10295]
[New LWP 10299]
[New LWP 10307]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f844fe28057 in __GI___waitpid (pid=10308, stat_loc=0x7fff32eab8d4, options=0) at ../sysdeps/unix/sysv/linux/waitpid.c:29
29    ../sysdeps/unix/sysv/linux/waitpid.c: No such file or directory.
[Current thread is 1 (Thread 0x7f845e633380 (LWP 10288))]
#0  0x00007f844fe28057 in __GI___waitpid (pid=10308, stat_loc=0x7fff32eab8d4, options=0) at ../sysdeps/unix/sysv/linux/waitpid.c:29
        resultvar = 18446744073709551104
        sc_cancel_oldtype = 0
#1  0x000055f5957356c5 in qgisCrash (signal=11) at /home/richard/dev/qgis/git/qgis/src/app/main.cpp:326
        status = 32767
        pidstr = "--pid=10288\000\365U\000\[email protected]\272\352\062\377\177\000\000\230;\326U\204\177\000" 
        gdbpid = 10308
        exename = "/home/richard/bin/qgis_all/master/debug/bin/qgis\000\267\352\062\377\177\000\000b\354\211]\204\177\000\000/\271\352\062\377\177\000\[email protected]\272\352\062\377\177\000\000p=\247\237\365U\000\000\000\352z\207\063\377\335\372p\267\352\062\377\177\000\000p=\247\237\365U\000\[email protected]\272\352\062\377\177\000\[email protected]\236D\227\365U\000\000\240\032?\227\365U\000\000p=\247\237\365U\000\000Ѝ\276\237\365U\000\000\234U\322U\204\177\000\000\003\000\000\000\005\000\000\[email protected]\272\352\062\377\177\000\000\000\000\000\000\000\000\000\000\320\316\352\062\377\177\000\000\200\212>\227\365U\000\000d"...
        len = 48
#2  <signal handler called>
No locals.
#3  0x00007f845ab20298 in std::__uniq_ptr_impl<QgsLayoutPageCollection, std::default_delete<QgsLayoutPageCollection> >::_M_ptr (this=0xb0) at /usr/include/c++/7/bits/unique_ptr.h:147
No locals.
#4  0x00007f845ab1f22c in std::unique_ptr<QgsLayoutPageCollection, std::default_delete<QgsLayoutPageCollection> >::get (this=0xb0) at /usr/include/c++/7/bits/unique_ptr.h:337
No locals.
#5  0x00007f845ab1a5a4 in QgsLayout::pageCollection (this=0x0) at /home/richard/dev/qgis/git/qgis/src/core/layout/qgslayout.cpp:453
No locals.
#6  0x00007f845cbdd997 in QgsLayoutRuler::mousePressEvent (this=0x55f59fa73d70, event=0x7fff32eac4f0) at /home/richard/dev/qgis/git/qgis/src/gui/layout/qgslayoutruler.cpp:687
No locals.
#7  0x00007f8455d644ef in QWidget::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#8  0x00007f8455d2559c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#9  0x00007f8455d2d3bf in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#10 0x00007f845a78cff3 in QgsApplication::notify (this=0x7fff32eaced0, receiver=0x55f59fa73d70, event=0x7fff32eac4f0) at /home/richard/dev/qgis/git/qgis/src/core/qgsapplication.cpp:317
        done = true
        __FUNCTION__ = "notify" 
#11 0x00007f8450ecf258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#12 0x00007f8455d2c392 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#13 0x00007f8455d7e88b in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#14 0x00007f8455d80efa in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#15 0x00007f8455d2559c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#16 0x00007f8455d2ce64 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5
No symbol table info available.
#17 0x00007f845a78cff3 in QgsApplication::notify (this=0x7fff32eaced0, receiver=0x55f59fbe1d70, event=0x7fff32eac9c0) at /home/richard/dev/qgis/git/qgis/src/core/qgsapplication.cpp:317
        done = true
        __FUNCTION__ = "notify" 
#18 0x00007f8450ecf258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#19 0x00007f84517bc183 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
No symbol table info available.
#20 0x00007f84517bdc65 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
No symbol table info available.
#21 0x00007f8451795cab in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
No symbol table info available.
#22 0x00007f8436ffad50 in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
No symbol table info available.
#23 0x00007f844b49ef67 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#24 0x00007f844b49f1a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#25 0x00007f844b49f22c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#26 0x00007f8450f280ef in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#27 0x00007f8450ecd2aa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#28 0x00007f8450ed6214 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5
No symbol table info available.
#29 0x000055f59573b766 in main (argc=1, argv=0x7fff32eae298) at /home/richard/dev/qgis/git/qgis/src/app/main.cpp:1431
        profile = 0x55f5973f5880
        presetStyle = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        myLocaleOverrideFlag = false
        qgistor = <incomplete type>
        w = 600
        mySplashPath = {static null = {<No data fields>}, d = 0x7f845ae79ba0 <QgsApplication::splashPath()::{lambda()#1}::operator()() const::qstring_literal>}
        h = 300
        mypSplash = 0x55f5975fbbf0
        qgis = 0x55f597881500
        retval = 1040
        manager = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7f8451320bc0 <QObject::staticMetaObject>, stringdata = 0x7f845af74ee0 <qt_meta_stringdata_QgsUserProfileManager>, data = 0x7f845af74f60 <qt_meta_data_QgsUserProfileManager>, static_metacall = 0x7f845ae1440a <QgsUserProfileManager::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, mWatchProfiles = false, mWatcher = std::unique_ptr<QFileSystemWatcher> containing 0x0, mRootProfilePath = {static null = {<No data fields>}, d = 0x55f597442640}, mUserProfile = std::unique_ptr<QgsUserProfile> containing 0x0, mSettings = std::unique_ptr<QSettings> containing 0x55f5973f5a00}
        profileFolder = {static null = {<No data fields>}, d = 0x55f5974405d0}
        settings = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7f8451320bc0 <QObject::staticMetaObject>, stringdata = 0x7f845af673c0 <qt_meta_stringdata_QgsSettings>, data = 0x7f845af67400 <qt_meta_data_QgsSettings>, static_metacall = 0x7f845ae012ae <QgsSettings::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static sGlobalSettingsPath = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}, mUserSettings = 0x55f5973f5880, mGlobalSettings = 0x0, mUsingGlobalArray = false}
        mySettings = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7f8451320bc0 <QObject::staticMetaObject>, stringdata = 0x7f845af673c0 <qt_meta_stringdata_QgsSettings>, data = 0x7f845af67400 <qt_meta_data_QgsSettings>, static_metacall = 0x7f845ae012ae <QgsSettings::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static sGlobalSettingsPath = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}, mUserSettings = 0x55f59760cad0, mGlobalSettings = 0x0, mUsingGlobalArray = false}
        systemEnvVars = {d = 0x55f5975db480}
        activeStyleName = {static null = {<No data fields>}, d = 0x55f59788a300}
        i18nPath = {static null = {<No data fields>}, d = 0x55f5978388c0}
        myUserLocale = {static null = {<No data fields>}, d = 0x55f59788ad10}
        qttor = <incomplete type>
        myApp = {<QApplication> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7f84563e7040 <QApplication::staticMetaObject>, stringdata = 0x7f845af54be0 <qt_meta_stringdata_QgsApplication>, data = 0x7f845af54d40 <qt_meta_data_QgsApplication>, static_metacall = 0x7f845ade76dc <QgsApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, static QGIS_ORGANIZATION_NAME = 0x7f845ae78f88 "QGIS", static QGIS_ORGANIZATION_DOMAIN = 0x7f845ae78f8d "qgis.org", static QGIS_APPLICATION_NAME = 0x7f845ae78f96 "QGIS3", static mFileOpenEventReceiver29900 = 0x55f597881500, static mFileOpenEventList29900 = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f8450f7dac0 <QListData::shared_null>}, d = 0x7f8450f7dac0 <QListData::shared_null>}}, <No data fields>}, static mUIThemeName29900 = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}, static mPrefixPath29900 = {static null = <same as static member of an already seen type>, d = 0x55f5974b3840}, static mPluginPath29900 = {static null = <same as static member of an already seen type>, d = 0x55f59744c010}, static mPkgDataPath29900 = {static null = <same as static member of an already seen type>, d = 0x55f59757b630}, static mLibraryPath29900 = {static null = <same as static member of an already seen type>, d = 0x55f5974f9a20}, static mLibexecPath29900 = {static null = <same as static member of an already seen type>, d = 0x55f5975a6cf0}, static mThemeName29900 = {static null = <same as static member of an already seen type>, d = 0x7f845ae79740 <QgsApplication::setUITheme(QString const&)::{lambda()#2}::operator()() const::qstring_literal>}, static mDefaultSvgPaths29900 = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55f5975db4b0}, d = 0x55f5975db4b0}}, <No data fields>}, static mSystemEnvVars29900 = {d = 0x55f5975db480}, static mConfigPath29900 = {static null = {<No data fields>}, d = 0x55f5975cf160}, static mRunningFromBuildDir29900 = false, static mBuildSourcePath29900 = {static null = <same as static member of an already seen type>, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}, static mBuildOutputPath29900 = {static null = <same as static member of an already seen type>, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}, static mGdalSkipList29900 = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f8450f7dac0 <QListData::shared_null>}, d = 0x7f8450f7dac0 <QListData::shared_null>}}, <No data fields>}, static mMaxThreads29900 = -1, static mAuthDbDirPath29900 = {static null = {<No data fields>}, d = 0x55f5975cf160}, static sUserName = {static null = <same as static member of an already seen type>, d = 0x55f597cf7380}, static sUserFullName = {static null = <same as static member of an already seen type>, d = 0x55f597d0ac90}, static sPlatformName = {static null = <same as static member of an already seen type>, d = 0x55f597449590}, mIconCache = {d = 0x55f597bdb090}, mCursorCache = {d = 0x55f597b159b0}, mDataItemProviderRegistry = 0x55f597a137d0, mAuthManager = 0x55f59795d650, mApplicationMembers = 0x55f5974bc950, static sApplicationMembers = 0x0}
        customizationsettings = 0x55f59756ebe0
        useCustomVars = false
        myPixmap = <incomplete type>
        __FUNCTION__ = "main" 
        mySnapshotFileName = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        configLocalStorageLocation = {static null = {<No data fields>}, d = 0x55f597445070}
        profileName = {static null = {<No data fields>}, d = 0x55f5974455d0}
        mySnapshotWidth = 800
        mySnapshotHeight = 600
        myHideSplash = false
        mySettingsMigrationForce = false
        mySkipVersionCheck = false
        myRestoreDefaultWindowState = false
        myRestorePlugins = true
        myCustomization = true
        dxfOutputFile = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        dxfSymbologyMode = QgsDxfExport::SymbolLayerSymbology
        dxfScale = 50000
        dxfEncoding = {static null = {<No data fields>}, d = 0x55f595743900 <main::{lambda()#1}::operator()() const::qstring_literal>}
        dxfMapTheme = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        dxfExtent = {mXmin = 0, mYmin = 0, mXmax = 0, mYmax = 0}
        myInitialExtent = {static null = {<No data fields>}, d = 0x55f595743940 <main::{lambda()#2}::operator()() const::qstring_literal>}
        myTranslationCode = {static null = {<No data fields>}, d = 0x55f597829400}
        configpath = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        authdbdirectory = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        pythonfile = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        customizationfile = {static null = {<No data fields>}, d = 0x55f597616d80}
        globalsettingsfile = {static null = {<No data fields>}, d = 0x7f8450f7b9e0 <QArrayData::shared_null>}
        args = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55f5973f5460}, d = 0x55f5973f5460}}, <No data fields>}
        myUseGuiFlag = true
        globalSettings = 0x55f5973f5a00
        rootProfileFolder = {static null = {<No data fields>}, d = 0x55f597442640}
gdb returned 0
/home/richard/bin/qgis: line 6: 10288 Aborted                 /home/richard/bin/qgis_all/master/debug/bin/qgis "[email protected]" 

#2 Updated by Nyall Dawson over 2 years ago

  • % Done changed from 0 to 100
  • Status changed from Open to Closed

#3 Updated by Giovanni Manghi over 2 years ago

  • Resolution set to fixed/implemented

Also available in: Atom PDF