On some occasion when applying Tags to a selection of images the application will crash. It appears the Tags may have been applied to only one of the selected images before crashing. Testing with latest AppImage (currently 5.9.0-release) Backtrace: Thread 1 "digikam" received signal SIGSEGV, Segmentation fault. 0x000000372a25d2b8 in QSortFilterProxyModel::parent(QModelIndex const&) const () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 (gdb) bt #0 0x000000372a25d2b8 in QSortFilterProxyModel::parent(QModelIndex const&) const () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #1 0x000000372a23737e in QAbstractItemModelPrivate::rowsAboutToBeRemoved(QModelIndex const&, int, int) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #2 0x000000372a23a775 in QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #3 0x000000372a25cbfd in ?? () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #4 0x000000372a2617ca in ?? () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #5 0x000000372a261623 in ?? () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #6 0x000000372a262131 in QSortFilterProxyModel::invalidateFilter() () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #7 0x00007ffff76fc98d in Digikam::CheckableAlbumFilterModel::setFilterChecked (this=0x125f5e0, filter=<optimised out>) at /b/dktemp/digikam-master/core/libs/models/albumfiltermodel.cpp:455 #8 0x00007ffff762897c in Digikam::ImageDescEditTab::slotAssignedTagsToggled (this=0x11d3e90, t=true) at /b/dktemp/digikam-master/core/libs/imageproperties/imagedescedittab.cpp:1409 #9 0x00007ffff7628b32 in Digikam::ImageDescEditTab::updateTagsView (this=this@entry=0x11d3e90) at /b/dktemp/digikam-master/core/libs/imageproperties/imagedescedittab.cpp:1107 #10 0x00007ffff762cc95 in Digikam::ImageDescEditTab::setInfos (this=this@entry=0x11d3e90, infos=...) at /b/dktemp/digikam-master/core/libs/imageproperties/imagedescedittab.cpp:800 #11 0x00007ffff762ce26 in Digikam::ImageDescEditTab::setItem (this=0x11d3e90, info=...) at /b/dktemp/digikam-master/core/libs/imageproperties/imagedescedittab.cpp:755 #12 0x00007ffff761fd92 in Digikam::ImagePropertiesSideBarDB::slotChangedTab (this=this@entry=0x10155e0, tab=0x11d3e90) at /b/dktemp/digikam-master/core/libs/imageproperties/imagepropertiessidebardb.cpp:294 #13 0x00007ffff761d69e in Digikam::ImagePropertiesSideBarDB::itemChanged (this=this@entry=0x10155e0, infos=..., rect=..., img=img@entry=0x0, history=...) at /b/dktemp/digikam-master/core/libs/imageproperties/imagepropertiessidebardb.cpp:199 #14 0x00007ffff761d752 in Digikam::ImagePropertiesSideBarDB::itemChanged (this=0x10155e0, infos=...) at /b/dktemp/digikam-master/core/libs/imageproperties/imagepropertiessidebardb.cpp:175 #15 0x00007ffff75e3544 in Digikam::DigikamView::slotDispatchImageSelected (this=0x9619c0) at /b/dktemp/digikam-master/core/app/views/digikamview.cpp:1420 #16 0x00007ffff75f99c7 in Digikam::DigikamView::qt_static_metacall (_o=0x9619c0, _c=<optimised out>, _id=<optimised out>, _a=<optimised out>) at /b/dktemp/digikam-master/build/core/app/moc_digikamview.cpp:726 #17 0x000000372a2b72c8 in QMetaObject::activate(QObject*, int, int, void**) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #18 0x000000372a2c4b67 in QTimer::timeout(QTimer::QPrivateSignal) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #19 0x000000372a2c4e98 in QTimer::timerEvent(QTimerEvent*) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #20 0x000000372a2b8aab in QObject::event(QEvent*) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #21 0x00007fffef468a0c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Widgets.so.5 #22 0x00007fffef46ff10 in QApplication::notify(QObject*, QEvent*) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Widgets.so.5 #23 0x000000372a28e4b0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #24 0x000000372a2dd9ae in QTimerInfoList::activateTimers() () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #25 0x000000372a2de151 in ?? () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #26 0x00007fffecdd8fb7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #27 0x00007fffecdd91f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #28 0x00007fffecdd927c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #29 0x000000372a2de487 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #30 0x000000372a28c64a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #31 0x000000372a294d74 in QCoreApplication::exec() () from /tmp/.mount_digikaQF3wE9/usr/lib/libQt5Core.so.5 #32 0x0000000000405a61 in main (argc=1, argv=<optimised out>) at /b/dktemp/digikam-master/core/app/main/main.cpp:285
The AppImage Linux Bundle have been recompiled with last changes from source code and is available here for testing : https://files.kde.org/digikam/ Take a care : 6.0.0 is a beta release for the moment. Make a database backup before to test. Problem still here ? Gilles Caulier
I have had some crashes with 'digikam-6.0.0-beta1-20180831T074549-x86-64.appimage' while saving metadata to images (with and without lazy synchronization). Unfortunately there doesn't appear to be any backtrace? Console: /tmp/.mount_digikaEIFCxQ/AppRun: line 73: 10756 Segmentation fault (core dumped) digikam $@ [Inferior 1 (process 10740) exited with code 0213] (gdb) bt No stack.
You can start the AppImage bundle in GDV using the "debug" option from command line. It's explained here : http://www-ftp.lip6.fr/pub/X11/kde-applicationdata/digikam/README Gilles Caulier
Just as a note, we have many crashes with the AppImage ending in Qt, e.g. Bug 397919. Crashes that I can not reproduce here with the native digiKam version. Maik
(In reply to caulier.gilles from comment #3) > You can start the AppImage bundle in GDV using the "debug" option from > command line. > > It's explained here : > > http://www-ftp.lip6.fr/pub/X11/kde-applicationdata/digikam/README > > Gilles Caulier Hi, I'm not sure what else I need to do to get a backtrace. I am starting the appimage with "debug" option and the console outputs: Starting digiKam into GDB... Use 'bt' command on debugger prompt to get a crash backtrace. Use 'q' command to quit debugger session. ...
... and use the application as usual. when it crash, go back in the console and enter "bt". the backtrace will appear in the console.
(In reply to caulier.gilles from comment #6) > ... and use the application as usual. when it crash, go back in the console > and enter "bt". the backtrace will appear in the console. Yes, that is what I did previously, the log I posted shows it returned to (gdb) after crashing. Crashed again just now while tagging, no backtrace in GDB Digikam::ActionThreadBase::run: Action Thread run 1 new jobs Digikam::ActionThreadBase::cancel: Cancel Main Thread Digikam::ActionThreadBase::slotJobFinished: One job is done Digikam::ActionThreadBase::cancel: Cancel Main Thread /tmp/.mount_digikacGw5gK/AppRun: line 73: 3207 Segmentation fault (core dumped) digikam $@ [Inferior 1 (process 3163) exited with code 0213] (gdb) bt No stack. (gdb)
Latest AppImage (digikam-6.0.0-beta3-20181228T114626-x86-64.appimage) has been crashing frequently while tagging. In this instance the tags were added to all images in the database but only one image file was updated (JPG). Thread 1 "digikam" received signal SIGSEGV, Segmentation fault. 0x00000030a1258488 in QSortFilterProxyModel::parent(QModelIndex const&) const () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 (gdb) bt #0 0x00000030a1258488 in QSortFilterProxyModel::parent(QModelIndex const&) const () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #1 0x00000030a1235253 in QAbstractItemModelPrivate::rowsAboutToBeInserted(QModelIndex const&, int, int) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #2 0x00000030a1239245 in QAbstractItemModel::beginInsertRows(QModelIndex const&, int, int) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #3 0x00000030a1258bfa in ?? () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #4 0x00000030a125d261 in ?? () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #5 0x00000030a125d537 in ?? () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #6 0x00000030a125da51 in QSortFilterProxyModel::invalidateFilter() () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #7 0x00007ffff78996cd in Digikam::CheckableAlbumFilterModel::setFilterChecked (this=0x12eb390, filter=<optimized out>) at /b/dktemp/digikam-master/core/libs/models/albumfiltermodel.cpp:456 #8 0x00007ffff77bb49c in Digikam::ItemDescEditTab::slotAssignedTagsToggled (this=0x125eff0, t=true) at /b/dktemp/digikam-master/core/libs/properties/captions/itemdescedittab.cpp:1412 #9 0x00007ffff77bb64a in Digikam::ItemDescEditTab::updateTagsView (this=this@entry=0x125eff0) at /b/dktemp/digikam-master/core/libs/properties/captions/itemdescedittab.cpp:1109 #10 0x00007ffff77c0420 in Digikam::ItemDescEditTab::setInfos (this=this@entry=0x125eff0, infos=...) at /b/dktemp/digikam-master/core/libs/properties/captions/itemdescedittab.cpp:802 #11 0x00007ffff77c07ef in Digikam::ItemDescEditTab::slotReloadForMetadataChange (this=0x125eff0) at /b/dktemp/digikam-master/core/libs/properties/captions/itemdescedittab.cpp:1319 #12 0x00007ffff77ccc05 in Digikam::ItemDescEditTab::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /b/dktemp/digikam-master/build/core/libs/properties/moc_itemdescedittab.cpp:253 #13 0x00000030a12b9449 in QMetaObject::activate(QObject*, int, int, void**) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #14 0x00000030a12c5c17 in QTimer::timeout(QTimer::QPrivateSignal) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #15 0x00000030a12c5ee8 in QTimer::timerEvent(QTimerEvent*) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #16 0x00000030a12ba35b in QObject::event(QEvent*) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #17 0x00007ffff18d028c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Widgets.so.5 #18 0x00007ffff18d76b7 in QApplication::notify(QObject*, QEvent*) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Widgets.so.5 #19 0x00000030a128ee68 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #20 0x00000030a12e0c5e in QTimerInfoList::activateTimers() () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #21 0x00000030a12e1441 in ?? () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #22 0x00007ffff0637c3e in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #23 0x00007ffff0637ed8 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #24 0x00007ffff0637f6c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #25 0x00000030a12e177f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #26 0x00000030a128d45a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #27 0x00000030a1295d34 in QCoreApplication::exec() () from /tmp/.mount_digikajiq4kA/usr/lib/libQt5Core.so.5 #28 0x0000000000405214 in main (argc=1, argv=<optimized out>) at /b/dktemp/digikam-master/core/app/main/main.cpp:290
It crashes relatively deep in the QSortFilterProxyModel. There have been Qt bugreports lately. I can not reproduce the problem. we'll see if they can reproduce the problem with Qt-5.12. https://bugreports.qt.io/browse/QTBUG-44962 https://bugreports.qt.io/browse/QTBUG-67948 Maik
After 3 weeks of work, i finally completed the compilation of AppImage using Qt 5.11.3 + QWebkit 5.212. New 6.1.0 pre-release AppImage bundle can be found here (64 bits only for the moment) : https://files.kde.org/digikam/ Please check if this bugzilla entry still valid. Thanks in advance Gilles Caulier
*** Bug 407914 has been marked as a duplicate of this bug. ***
Git commit 941f7cfae0416f9f123ce47a995041b566ff85ec by Maik Qualmann. Committed on 24/05/2019 at 20:57. Pushed by mqualmann into branch 'master'. add checks for valid QModelIndex Related: bug 407914 M +15 -0 core/libs/database/models/itemfiltermodel.cpp M +10 -0 core/libs/models/albumfiltermodel.cpp M +18 -3 core/showfoto/thumbbar/showfotofiltermodel.cpp M +1 -1 core/showfoto/thumbbar/showfotofiltermodel.h M +15 -0 core/utilities/import/models/importfiltermodel.cpp https://invent.kde.org/kde/digikam/commit/941f7cfae0416f9f123ce47a995041b566ff85ec
Full logfile for bug #407914: https://drive.google.com/open?id=1nwxNUtGug_BcikkdFOr5VDyyt8Nrrmu1 The beginning is truncated due to the limitations in gnome-terminal. I have redacted people's names in the log file due to privacy concerns.
Unfortunately, the most important thing is missing. If you run digiKam like here in GDB, you have to type "bt" + Enter after the crash. Then GDB shows the backtrace and this gives us the information where the problem can be approximately. Maik
That's too bad. I'll keep it in mind for the next time.
Hi, This problem still reproducible using last Linux AppImage bundle 6.2.0 pre release available here : https://files.kde.org/digikam/ Thanks in advance Gilles Caulier
I personally have not had that problem in some time (a couple of months). I am not sure if it has been solved or I just have not repeated the same behavior that triggered this crash.
Meku do you see my comment #16 ? Best Gilles Caulier
(In reply to caulier.gilles from comment #18) > Meku do you see my comment #16 ? > > Best > > Gilles Caulier Sorry I have not begun using 6.2.0 yet.
Not reproducible with AppImage bundle pre-release 7.0.0-beta2 based on Qt 5.14 Please repon this file if problem remain. Gilles Caulier