Bug 226586 - Digikam 1.2 crashes after My Tags window goes blank
Summary: Digikam 1.2 crashes after My Tags window goes blank
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Tags-Engine (show other bugs)
Version: 1.2.0
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-02-12 19:35 UTC by terri.bugs
Modified: 2012-06-27 10:54 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 1.2.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description terri.bugs 2010-02-12 19:35:53 UTC
Application that crashed: digikam
Version of the application: 1.2.0 (rev.: 1086154)
KDE Version: 4.3.2 (KDE 4.3.2)
Qt Version: 4.5.2
Operating System: Linux 2.6.31-17-generic x86_64
Distribution: Ubuntu 9.10

What I was doing when the application crashed:
I was recreating bug 226515 for testing. After removing a tag assigned to an image (as in 226515), the  right sidepanel Caption/Tags "My Tags" -window only includes a single item "My Tags", not the keyword hierarchy. 
Application crashes when one uses the left sidepanel to show only some subset of the images, eg. one album, spesific keyword. New for me is that sometimes the box beside "My Tags" is checked.
Using the right sidepanel is ok, although it seems to be partially locked, not all options are available for use. The menus work even if the My Tags window only has one item.

 -- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
The current source language is "auto; currently c".
[Current thread is 1 (Thread 0x7ff8ad7bd750 (LWP 2552))]

Thread 16 (Thread 0x7ff8971f9910 (LWP 2553)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007ff8a835c4fb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00000000006ebec6 in Digikam::ScanController::run (this=0x16fe080) at /home/terri/graphics/digikam/digikam/scancontroller.cpp:502
#3  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 15 (Thread 0x7ff893917910 (LWP 2555)):
#0  0x00007ff8a55496dd in __pthread_mutex_unlock_usercnt (mutex=0x18ff438) at pthread_mutex_unlock.c:52
#1  __pthread_mutex_unlock (mutex=0x18ff438) at pthread_mutex_unlock.c:289
#2  0x00007ff8a0b07dae in g_main_context_prepare () from /lib/libglib-2.0.so.0
#3  0x00007ff8a0b08191 in ?? () from /lib/libglib-2.0.so.0
#4  0x00007ff8a0b086c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0x00007ff8a846a1fe in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007ff8a8440532 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0x00007ff8a8440904 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#8  0x00007ff8a83586cb in QThread::exec() () from /usr/lib/libQtCore.so.4
#9  0x00007ff8aa2ebc8a in Digikam::ImageFilterModelWorker::Thread::run (this=0x18fe960) at /home/terri/graphics/build/digikam/digikam/../../../digikam/libs/models/imagefiltermodelthreads.h:66
#10 0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#11 0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#12 0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#13 0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 14 (Thread 0x7ff89308a910 (LWP 2556)):
#0  0xffffffffff60014c in ?? ()
#1  0x00007ff893089d60 in ?? ()
#2  0x00007fff143ff782 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
The current source language is "auto; currently c".

Thread 13 (Thread 0x7ff892809910 (LWP 2557)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007ff8a835c4fb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007ff8aa7b5bdc in Digikam::LoadSaveThread::run (this=0x1a73f80) at /home/terri/graphics/digikam/libs/threadimageio/loadsavethread.cpp:131
#3  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 12 (Thread 0x7ff892008910 (LWP 2558)):
#0  0x00007ff8a67bb656 in pthread_mutex_unlock (mutex=0x1a80d68) at forward.c:184
#1  0x00007ff8a0b083ea in ?? () from /lib/libglib-2.0.so.0
#2  0x00007ff8a0b086c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x00007ff8a846a1fe in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a8440532 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007ff8a8440904 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007ff8a83586cb in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00000000006e233a in Digikam::MetadataManagerWorker::Thread::run (this=0x1a7f370) at /home/terri/graphics/build/digikam/digikam/../../../digikam/digikam/metadatamanager_p.h:143
#8  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#9  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 11 (Thread 0x7ff891807910 (LWP 2559)):
#0  0x00007ff8a55496dd in __pthread_mutex_unlock_usercnt (mutex=0x1a85a68) at pthread_mutex_unlock.c:52
#1  __pthread_mutex_unlock (mutex=0x1a85a68) at pthread_mutex_unlock.c:289
#2  0x00007ff8a0b068df in g_main_context_acquire () from /lib/libglib-2.0.so.0
#3  0x00007ff8a0b08112 in ?? () from /lib/libglib-2.0.so.0
#4  0x00007ff8a0b086c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0x00007ff8a846a1fe in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007ff8a8440532 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0x00007ff8a8440904 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#8  0x00007ff8a83586cb in QThread::exec() () from /usr/lib/libQtCore.so.4
#9  0x00000000006e233a in Digikam::MetadataManagerWorker::Thread::run (this=0x1a80860) at /home/terri/graphics/build/digikam/digikam/../../../digikam/digikam/metadatamanager_p.h:143
#10 0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#11 0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#12 0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#13 0x0000000000000000 in ?? ()
The current source language is "auto; currently c".

Thread 10 (Thread 0x7ff891006910 (LWP 2560)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007ff8a835c4fb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007ff8aa7b5bdc in Digikam::LoadSaveThread::run (this=0x1a93210) at /home/terri/graphics/digikam/libs/threadimageio/loadsavethread.cpp:131
#3  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 9 (Thread 0x7ff8869cb910 (LWP 2561)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:220
#1  0x00007ff88a8f9c91 in ?? () from /usr/lib/libxine.so.1
#2  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 8 (Thread 0x7ff884846910 (LWP 2562)):
#0  0x00007ff8a67a5412 in select () from /lib/libc.so.6
#1  0x00007ff88a922725 in xine_usec_sleep () from /usr/lib/libxine.so.1
#2  0x00007ff88a9077e9 in ?? () from /usr/lib/libxine.so.1
#3  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7ff884045910 (LWP 2563)):
#0  0x00007ff8a55480b2 in __pthread_mutex_lock (mutex=0x1ff3aa8) at pthread_mutex_lock.c:61
#1  0x00007ff8a0b08423 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007ff8a0b086c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x00007ff8a846a1fe in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a8440532 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007ff8a8440904 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007ff8a83586cb in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00007ff88ab5456e in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so
#8  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#9  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()
The current source language is "auto; currently c".

Thread 6 (Thread 0x7ff87f432910 (LWP 2569)):
#0  0x00007ff8a67a03c3 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=333) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007ff883640cbe in ?? () from /usr/lib/xine/plugins/1.26/xineplug_ao_out_alsa.so
#2  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7ff88322d910 (LWP 2570)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007ff88a90a983 in ?? () from /usr/lib/libxine.so.1
#2  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7ff87cc2d910 (LWP 2580)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007ff8a835c4fb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007ff8aa7b5bdc in Digikam::LoadSaveThread::run (this=0x7ff8680be400) at /home/terri/graphics/digikam/libs/threadimageio/loadsavethread.cpp:131
#3  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()
The current source language is "auto; currently asm".

Thread 3 (Thread 0x7ff882a2c910 (LWP 2587)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007ff8a835c4fb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007ff8aa7b5bdc in Digikam::LoadSaveThread::run (this=0x28cf7c0) at /home/terri/graphics/digikam/libs/threadimageio/loadsavethread.cpp:131
#3  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7ff87e430910 (LWP 2588)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007ff8a835c4fb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007ff8aa7b5bdc in Digikam::LoadSaveThread::run (this=0x2bba160) at /home/terri/graphics/digikam/libs/threadimageio/loadsavethread.cpp:131
#3  0x00007ff8a835b445 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007ff8a5545a04 in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007ff8a67ac80d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7ff8ad7bd750 (LWP 2552)):
[KCrash Handler]
#5  0x00007ff8a6f9c83a in __dynamic_cast () from /usr/lib/libstdc++.so.6
#6  0x000000000049dd8f in Digikam::ImageDescEditTab::slotTagStateChanged (this=0x276a6e0, album=0x47c9740, checkState=Qt::Unchecked)
    at /home/terri/graphics/digikam/libs/imageproperties/imagedescedittab.cpp:720
#7  0x0000000000496ba2 in Digikam::ImageDescEditTab::qt_metacall (this=0x276a6e0, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0x7fff14306840)
    at /home/terri/graphics/build/digikam/digikam/imagedescedittab.moc:123
#8  0x00007ff8a8456ddc in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#9  0x0000000000604e72 in Digikam::AbstractCheckableAlbumModel::checkStateChanged (this=0x27c35e0, _t1=0x47c9740, _t2=Qt::Unchecked)
    at /home/terri/graphics/build/digikam/digikam/abstractalbummodel.moc:293
#10 0x0000000000607ad1 in Digikam::AbstractCheckableAlbumModel::resetAllCheckedAlbums (this=0x27c35e0) at /home/terri/graphics/digikam/libs/models/abstractalbummodel.cpp:773
#11 0x000000000049e564 in Digikam::ImageDescEditTab::updateTagsView (this=0x276a6e0) at /home/terri/graphics/digikam/libs/imageproperties/imagedescedittab.cpp:850
#12 0x000000000049d49e in Digikam::ImageDescEditTab::setInfos (this=0x276a6e0, infos=...) at /home/terri/graphics/digikam/libs/imageproperties/imagedescedittab.cpp:619
#13 0x000000000049d17c in Digikam::ImageDescEditTab::setItem (this=0x276a6e0, info=...) at /home/terri/graphics/digikam/libs/imageproperties/imagedescedittab.cpp:581
#14 0x000000000048aa1d in Digikam::ImagePropertiesSideBarDB::slotChangedTab (this=0x1a9f380, tab=0x276a6e0) at /home/terri/graphics/digikam/libs/imageproperties/imagepropertiessidebardb.cpp:276
#15 0x0000000000489f81 in Digikam::ImagePropertiesSideBarDB::itemChanged (this=0x1a9f380, infos=..., rect=..., img=0x0)
    at /home/terri/graphics/digikam/libs/imageproperties/imagepropertiessidebardb.cpp:179
#16 0x0000000000489e3d in Digikam::ImagePropertiesSideBarDB::itemChanged (this=0x1a9f380, infos=...) at /home/terri/graphics/digikam/libs/imageproperties/imagepropertiessidebardb.cpp:160
#17 0x000000000069b3f4 in Digikam::DigikamView::slotDispatchImageSelected (this=0x1901fc0) at /home/terri/graphics/digikam/digikam/digikamview.cpp:1001
#18 0x000000000069524c in Digikam::DigikamView::qt_metacall (this=0x1901fc0, _c=QMetaObject::InvokeMetaMethod, _id=87, _a=0x7fff14306f00)
    at /home/terri/graphics/build/digikam/digikam/digikamview.moc:343
#19 0x00007ff8a8456ddc in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4
#20 0x00007ff8a8450d83 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#21 0x00007ff8a7387efc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#22 0x00007ff8a738f1ce in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#23 0x00007ff8a92adab6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#24 0x00007ff8a8441c2c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#25 0x00007ff8a846c862 in ?? () from /usr/lib/libQtCore.so.4
#26 0x00007ff8a846a25d in ?? () from /usr/lib/libQtCore.so.4
#27 0x00007ff8a0b04bce in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#28 0x00007ff8a0b08598 in ?? () from /lib/libglib-2.0.so.0
#29 0x00007ff8a0b086c0 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#30 0x00007ff8a846a1a6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#31 0x00007ff8a741c4be in ?? () from /usr/lib/libQtGui.so.4
#32 0x00007ff8a8440532 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#33 0x00007ff8a8440904 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#34 0x00007ff8a8442ab9 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#35 0x0000000000783c44 in main (argc=1, argv=0x7fff14307ea8) at /home/terri/graphics/digikam/digikam/main.cpp:195
The current source language is "auto; currently c".

This bug may be a duplicate of or related to bug 226157

Reported using DrKonqi
Comment 1 Marcel Wiesweg 2010-02-12 23:13:36 UTC
SVN commit 1089332 by mwiesweg:

Perhaps the check state is touched again after albumCleared() is called, from
rowsAboutToBeRemoved? Move the albumCleared() call behind beginRemoveRows().

CCBUG: 226586

 M  +1 -1      abstractalbummodel.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1089332
Comment 2 terri.bugs 2010-02-14 18:40:54 UTC
I updated to svn 1089969 and now when I start digikam the "My Tags" window always contains only one item, My Tags with icon before it. However, the application doesn't crash anymore when showing some subset of the images even if My Tags window is blank. Albums, tags & searches all work fine and no more partially locked rigth sidepanel. 

So the original bug is probably fixed, but a new bug has been introduced (bug 226858, always empty My Tags window).
Comment 3 terri.bugs 2010-02-18 18:22:07 UTC
The original bug is fixed and My Tags in the right sidepanel can be expanded by double clicking. So as far as I'm conserned this bug can be closed as fixed.
Comment 4 Marcel Wiesweg 2010-02-27 17:28:22 UTC
Closing accordingly
Comment 5 caulier.gilles 2010-10-08 09:14:42 UTC
*** Bug 253551 has been marked as a duplicate of this bug. ***