Bug report #18118
Right-clicking on a recent project that has been moved/deleted causes a crash
Status: | Closed | ||
---|---|---|---|
Priority: | Low | ||
Assignee: | - | ||
Category: | GUI | ||
Affected QGIS version: | master | Regression?: | No |
Operating System: | Windows 10 x64 1511 10586.962 | Easy fix?: | Yes |
Pull Request or Patch supplied: | No | Resolution: | fixed/implemented |
Crashes QGIS or corrupts data: | Yes | Copied to github as #: | 26012 |
Description
User Feedback¶
I was right-clicking on the recent projects screen to remove a project from the list. I suspect the project had been moved in the file system.
Report Details¶
Crash ID: 8e2cbf6318ed8bfa6a441c736087d8057d3ac7e8
Stack Trace
QString::indexOf : QDir::fromNativeSeparators : QFileSystemWatcher::trUtf8 : QFileInfo::exists : QgsWelcomePageItemsModel::flags qgswelcomepageitemsmodel.cpp:211 QModelIndex::flags : QAbstractItemView::focusInEvent : QWidget::event : QFrame::event : QAbstractScrollArea::event : QApplicationPrivate::notify_helper : QApplication::notify : QgsApplication::notify qgsapplication.cpp:317 QCoreApplication::notifyInternal2 : QApplicationPrivate::setFocusWidget : QWidget::setFocus : QApplication::setActiveWindow : QApplicationPrivate::notifyActiveWindowChange : QGuiApplicationPrivate::processActivatedEvent : QWindowSystemInterface::sendWindowSystemEvents : QEventDispatcherWin32::processEvents : DispatchMessageW : DispatchMessageW : QEventDispatcherWin32::processEvents : qt_plugin_query_metadata : QEventLoop::exec : QCoreApplication::exec : main main.cpp:1431 WinMain mainwin.cpp:156 __scrt_common_main_seh exe_common.inl:253 BaseThreadInitThunk : RtlUserThreadStart :
QGIS Info
QGIS Version: 2.99.0-Master
QGIS code revision: b6ad920404
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.10586
History
#1 Updated by Richard Duivenvoorde over 6 years ago
Is this reproducible by you on your machine?
Here I tried to test this by creating 3 projects in /tmp, then remove one of the project files of it and then reopening QGIS.
While the removed project is grayed out, I can happily use the right click menu there and remove it from the list...
Mmm, I had a crash at a certain moment, just after removing an (excisting) project from the projectlist:
Fatal: ASSERT failure in QList<T>::at: "index out of range", file /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h, line 541 QGIS died on signal -1[New LWP 16353] [New LWP 16354] [New LWP 16355]
Will try with gdb
#2 Updated by Richard Duivenvoorde over 6 years ago
QGIS code revision
3836cd32f0
Just after removing (a last) item from the last projects list (via right click menu):
src/core/qgscoordinatetransform_p.cpp: 210: (initialize) [1050ms] Source/Dest CRS not equal, shortcircuit is not set. Fatal: ASSERT failure in QList<T>::at: "index out of range", file /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h, line 541 QGIS died on signal -1warning: process 17194 is already traced by process 17169 ptrace: Operation not permitted. No thread selected No stack. gdb returned 0 Thread 1 "qgis" received signal SIGABRT, Aborted. __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #1 0x00007fffe96b9cf7 in __GI_abort () at abort.c:90 #2 0x000055555556081a in qgisCrash (signal=-1) at /home/richard/dev/qgis/git/qgis/src/app/main.cpp:337 #3 0x0000555555560a6c in myMessageOutput (type=QtFatalMsg, msg=0x7fffc800b708 "ASSERT failure in QList<T>::at: \"index out of range\", file /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h, line 541") at /home/richard/dev/qgis/git/qgis/src/app/main.cpp:390 #4 0x00007fffea6005da in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #5 0x00007fffea6020ae in QMessageLogger::fatal(char const*, ...) const () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #6 0x00007fffea5fd5fa in qt_assert_x(char const*, char const*, char const*, int) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #7 0x00007ffff711e109 in QList<QgsWelcomePageItemsModel::RecentProjectData>::at (this=0x55555630d690, i=0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:541 #8 0x00007ffff72d7239 in QgsWelcomePageItemsModel::flags (this=0x55555630d680, index=...) at /home/richard/dev/qgis/git/qgis/src/app/qgswelcomepageitemsmodel.cpp:206 #9 0x00007fffefaa5553 in QAbstractItemView::focusInEvent(QFocusEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #10 0x00007fffef8914ff in QWidget::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #11 0x00007fffef931b9e in QFrame::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #12 0x00007fffef93abc3 in QAbstractScrollArea::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #13 0x00007fffefaa4dcb in QAbstractItemView::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #14 0x00007fffef85263c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #15 0x00007fffef859f04 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #16 0x00007ffff40b702b in QgsApplication::notify (this=0x7fffffffcd40, receiver=0x55555630b610, event=0x7fffffffc710) at /home/richard/dev/qgis/git/qgis/src/core/qgsapplication.cpp:317 #17 0x00007fffea7f5258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #18 0x00007fffef857abe in QApplicationPrivate::setFocusWidget(QWidget*, Qt::FocusReason) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #19 0x00007fffef88b4ef in QWidget::setFocus(Qt::FocusReason) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #20 0x00007fffef857f4b in QApplication::setActiveWindow(QWidget*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #21 0x00007fffef858043 in QApplicationPrivate::notifyActiveWindowChange(QWindow*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #22 0x00007fffeb0e3af5 in QGuiApplicationPrivate::processActivatedEvent(QWindowSystemInterfacePrivate::ActivatedWindowEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #23 0x00007fffeb0e3d4d in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #24 0x00007fffeb0bbcab in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #25 0x00007fffd09fad50 in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #26 0x00007fffe4dbdf67 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #27 0x00007fffe4dbe1a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #28 0x00007fffe4dbe22c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #29 0x00007fffea84e0ef in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #30 0x00007fffea7f32aa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #31 0x00007fffea7fc214 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #32 0x000055555556683f in main (argc=1, argv=0x7fffffffe0f8) at /home/richard/dev/qgis/git/qgis/src/app/main.cpp:1431 (gdb)
#3 Updated by Salvatore Larosa over 6 years ago
- % Done changed from 0 to 100
- Status changed from Open to Closed
Applied in changeset qgis|4b5fc4037962ede212a8317611085368446a9a23.
#4 Updated by Giovanni Manghi over 6 years ago
- Resolution set to fixed/implemented