Bug 202886 - digikam crash unexpectedly segmentation fault
Summary: digikam crash unexpectedly segmentation fault
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Database-Albums (show other bugs)
Version: 1.0.0
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-08-07 00:02 UTC by Artem
Modified: 2017-07-20 12:43 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 1.0.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Artem 2009-08-07 00:02:49 UTC
Application that crashed: digikam
Version of the application: 1.0.0-beta3
KDE Version: 4.3.00 (KDE 4.3.0)
Qt Version: 4.5.2
Operating System: Linux 2.6.30.1 x86_64
Distribution: Debian GNU/Linux unstable (sid)

What I was doing when the application crashed:
Digilam crashed unexpectedly while just browsing it's menu. I've played with it some time, so may be it is due to my previous actions.

It may be concerned this bag:
All my pictures are not displayed in digikam. But  import operation from USB seems to work correctly. New fotos appears in folders e.t.c. In the Internet I've found, that it is because current Debian digikam package is build upon KDE 4.2.* version of kdelibs. So may be this caused this segfault too. 

Unfortunatly I can't repeat it again.

 -- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
[Current thread is 0 (LWP 7410)]

Thread 16 (Thread 0x7f5959581950 (LWP 7412)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f596510d3e9 in QWaitCondition::wait (this=0x26da088, mutex=0x26da080, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  0x00000000006c0550 in Digikam::ScanController::run (this=0x271eb90) at /tmp/buildd/digikam-1.0.0~beta3/digikam/scancontroller.cpp:483
#3  0x00007f596510c3f5 in QThreadPrivate::start (arg=0x271eb90) at thread/qthread_unix.cpp:188
#4  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 15 (Thread 0x7f5955dff950 (LWP 7414)):
#0  0xffffffffff600132 in ?? ()
#1  0x00007fffd270c5fb in ?? ()
#2  0x00007f595e596f6f in *__GI_clock_gettime (clock_id=1440738816, tp=0x7f5955dfee00) at ../sysdeps/unix/clock_gettime.c:100
#3  0x00007f596521c75d in QTimerInfoList::getTime (this=<value optimized out>, t=@0x2700db0) at kernel/qeventdispatcher_unix.cpp:339
#4  0x00007f596521c941 in QTimerInfoList::updateCurrentTime (this=0x7f5955dfee00) at kernel/qeventdispatcher_unix.cpp:297
#5  0x00007f596521e843 in QTimerInfoList::timerWait (this=0x7f5955dfee00, tm=@0x7f5955dfee00) at kernel/qeventdispatcher_unix.cpp:420
#6  0x00007f596521ad4d in timerSourcePrepare (source=<value optimized out>, timeout=0x7f5955dfeef4) at kernel/qeventdispatcher_glib.cpp:141
#7  0x00007f595f02df42 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#8  0x00007f595f02e2ef in ?? () from /usr/lib/libglib-2.0.so.0
#9  0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#10 0x00007f596521ab9e in QEventDispatcherGlib::processEvents (this=0x292d030, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:329
#11 0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1440739392}) at kernel/qeventloop.cpp:149
#12 0x00007f59651f1134 in QEventLoop::exec (this=0x7f5955dff080, flags={i = 1440739472}) at kernel/qeventloop.cpp:201
#13 0x00007f59651094f8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#14 0x00007f596510c3f5 in QThreadPrivate::start (arg=0x273cb30) at thread/qthread_unix.cpp:188
#15 0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#16 0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 14 (Thread 0x7f5954d7c950 (LWP 7415)):
#0  0x00007f59646658f6 in *__GI___poll (fds=0x2930e50, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f595f02e4c9 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f596521ab9e in QEventDispatcherGlib::processEvents (this=0x2930e30, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:329
#4  0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1423425600}) at kernel/qeventloop.cpp:149
#5  0x00007f59651f1134 in QEventLoop::exec (this=0x7f5954d7c080, flags={i = 1423425680}) at kernel/qeventloop.cpp:201
#6  0x00007f59651094f8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#7  0x00007f596510c3f5 in QThreadPrivate::start (arg=0x292d010) at thread/qthread_unix.cpp:188
#8  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#9  0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()

Thread 13 (Thread 0x7f594ffff950 (LWP 7416)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f596510d3e9 in QWaitCondition::wait (this=0x2a29d00, mutex=0x2a29cf8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  0x00007f5968ade9dc in Digikam::LoadSaveThread::run (this=0x2a29ce0) at /tmp/buildd/digikam-1.0.0~beta3/libs/threadimageio/loadsavethread.cpp:136
#3  0x00007f596510c3f5 in QThreadPrivate::start (arg=0x2a29ce0) at thread/qthread_unix.cpp:188
#4  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 12 (Thread 0x7f594f7fe950 (LWP 7417)):
#0  0xffffffffff600132 in ?? ()
#1  0x00007fffd270c5fb in ?? ()
#2  0x00007f595e596f6f in *__GI_clock_gettime (clock_id=1333779968, tp=0x7f594f7fde00) at ../sysdeps/unix/clock_gettime.c:100
#3  0x00007f596521c75d in QTimerInfoList::getTime (this=<value optimized out>, t=@0x2a3df80) at kernel/qeventdispatcher_unix.cpp:339
#4  0x00007f596521c941 in QTimerInfoList::updateCurrentTime (this=0x7f594f7fde00) at kernel/qeventdispatcher_unix.cpp:297
#5  0x00007f596521e843 in QTimerInfoList::timerWait (this=0x7f594f7fde00, tm=@0x7f594f7fde00) at kernel/qeventdispatcher_unix.cpp:420
#6  0x00007f596521ad4d in timerSourcePrepare (source=<value optimized out>, timeout=0x7f594f7fdef4) at kernel/qeventdispatcher_glib.cpp:141
#7  0x00007f595f02df42 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#8  0x00007f595f02e2ef in ?? () from /usr/lib/libglib-2.0.so.0
#9  0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#10 0x00007f596521ab9e in QEventDispatcherGlib::processEvents (this=0x2a3ca20, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:329
#11 0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1333780544}) at kernel/qeventloop.cpp:149
#12 0x00007f59651f1134 in QEventLoop::exec (this=0x7f594f7fe080, flags={i = 1333780624}) at kernel/qeventloop.cpp:201
#13 0x00007f59651094f8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#14 0x00007f596510c3f5 in QThreadPrivate::start (arg=0x2a3ad30) at thread/qthread_unix.cpp:188
#15 0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#16 0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 11 (Thread 0x7f594effd950 (LWP 7418)):
#0  0xffffffffff600132 in ?? ()
#1  0x00007fffd270c5fb in ?? ()
#2  0x00007f595e596f6f in *__GI_clock_gettime (clock_id=1325387264, tp=0x7f594effce00) at ../sysdeps/unix/clock_gettime.c:100
#3  0x00007f596521c75d in QTimerInfoList::getTime (this=<value optimized out>, t=@0x2a3f8a0) at kernel/qeventdispatcher_unix.cpp:339
#4  0x00007f596521c941 in QTimerInfoList::updateCurrentTime (this=0x7f594effce00) at kernel/qeventdispatcher_unix.cpp:297
#5  0x00007f596521e843 in QTimerInfoList::timerWait (this=0x7f594effce00, tm=@0x7f594effce00) at kernel/qeventdispatcher_unix.cpp:420
#6  0x00007f596521ad4d in timerSourcePrepare (source=<value optimized out>, timeout=0x7f594effcef4) at kernel/qeventdispatcher_glib.cpp:141
#7  0x00007f595f02df42 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#8  0x00007f595f02e2ef in ?? () from /usr/lib/libglib-2.0.so.0
#9  0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#10 0x00007f596521ab9e in QEventDispatcherGlib::processEvents (this=0x2a3b140, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:329
#11 0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1325387840}) at kernel/qeventloop.cpp:149
#12 0x00007f59651f1134 in QEventLoop::exec (this=0x7f594effd080, flags={i = 1325387920}) at kernel/qeventloop.cpp:201
#13 0x00007f59651094f8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#14 0x00007f596510c3f5 in QThreadPrivate::start (arg=0x2a3c690) at thread/qthread_unix.cpp:188
#15 0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#16 0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 10 (Thread 0x7f594e7fc950 (LWP 7419)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f596510d3e9 in QWaitCondition::wait (this=0x2a2f760, mutex=0x2a2f758, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  0x00007f5968ade9dc in Digikam::LoadSaveThread::run (this=0x2a2f740) at /tmp/buildd/digikam-1.0.0~beta3/libs/threadimageio/loadsavethread.cpp:136
#3  0x00007f596510c3f5 in QThreadPrivate::start (arg=0x2a2f740) at thread/qthread_unix.cpp:188
#4  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 9 (Thread 0x7f5946952950 (LWP 7420)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:217
#1  0x00007f594c4d5ca1 in ?? () from /usr/lib/libxine.so.1
#2  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#3  0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7f594467b950 (LWP 7421)):
#0  0x00007f5964667af2 in select () from /lib/libc.so.6
#1  0x00007f594c4fe654 in xine_usec_sleep () from /usr/lib/libxine.so.1
#2  0x00007f594c4e37bb in ?? () from /usr/lib/libxine.so.1
#3  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#4  0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7f5943e7a950 (LWP 7422)):
#0  0xffffffffff600132 in ?? ()
#1  0x00007fffd270c5fb in ?? ()
#2  0x00007f595e596f6f in *__GI_clock_gettime (clock_id=1139252656, tp=0x7f5943e79db0) at ../sysdeps/unix/clock_gettime.c:100
#3  0x00007f596521c75d in QTimerInfoList::getTime (this=<value optimized out>, t=@0x2fc02a0) at kernel/qeventdispatcher_unix.cpp:339
#4  0x00007f596521c941 in QTimerInfoList::updateCurrentTime (this=0x7f5943e79db0) at kernel/qeventdispatcher_unix.cpp:297
#5  0x00007f596521e843 in QTimerInfoList::timerWait (this=0x7f5943e79db0, tm=@0x7f5943e79db0) at kernel/qeventdispatcher_unix.cpp:420
#6  0x00007f596521ad4d in timerSourcePrepare (source=<value optimized out>, timeout=0x7f5943e79ea4) at kernel/qeventdispatcher_glib.cpp:141
#7  0x00007f595f02df42 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#8  0x00007f595f02e2ef in ?? () from /usr/lib/libglib-2.0.so.0
#9  0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#10 0x00007f596521ab9e in QEventDispatcherGlib::processEvents (this=0x2fbece0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:329
#11 0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1139253232}) at kernel/qeventloop.cpp:149
#12 0x00007f59651f1134 in QEventLoop::exec (this=0x7f5943e7a030, flags={i = 1139253312}) at kernel/qeventloop.cpp:201
#13 0x00007f59651094f8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#14 0x00007f594c730634 in ?? () from /usr/lib/kde4/plugins/phonon_backend/phonon_xine.so
#15 0x00007f596510c3f5 in QThreadPrivate::start (arg=0x2fbe6e0) at thread/qthread_unix.cpp:188
#16 0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#17 0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#18 0x0000000000000000 in ?? ()

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

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

Thread 4 (Thread 0x7f593dfd1950 (LWP 7436)):
#0  0x00007f59646658f6 in *__GI___poll (fds=0x7f5924004040, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f595f02e4c9 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f596521ab9e in QEventDispatcherGlib::processEvents (this=0x37e9840, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:329
#4  0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1039994832}) at kernel/qeventloop.cpp:149
#5  0x00007f59651f1134 in QEventLoop::exec (this=0x7f593dfd1010, flags={i = 1039994912}) at kernel/qeventloop.cpp:201
#6  0x00007f59651094f8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#7  0x00007f5941c5c61e in ?? () from /usr/lib/kde4/plugins/marble/GpsdPositionProviderPlugin.so
#8  0x00007f596510c3f5 in QThreadPrivate::start (arg=0x399a080) at thread/qthread_unix.cpp:188
#9  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f593e7d2950 (LWP 7443)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1  0x00007f596510d3e9 in QWaitCondition::wait (this=0x3c5fe60, mutex=0x3c5fe58, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2  0x00007f5968ade9dc in Digikam::LoadSaveThread::run (this=0x3c5fe40) at /tmp/buildd/digikam-1.0.0~beta3/libs/threadimageio/loadsavethread.cpp:136
#3  0x00007f596510c3f5 in QThreadPrivate::start (arg=0x3c5fe40) at thread/qthread_unix.cpp:188
#4  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#5  0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f593ffd5950 (LWP 7444)):
#0  0x00007f59646658f6 in *__GI___poll (fds=0x7f592450f010, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f595f02e4c9 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f596521ab9e in QEventDispatcherGlib::processEvents (this=0x7f592450e840, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:329
#4  0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1073565648}) at kernel/qeventloop.cpp:149
#5  0x00007f59651f1134 in QEventLoop::exec (this=0x7f593ffd5010, flags={i = 1073565728}) at kernel/qeventloop.cpp:201
#6  0x00007f59651094f8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#7  0x00007f5941c5c61e in ?? () from /usr/lib/kde4/plugins/marble/GpsdPositionProviderPlugin.so
#8  0x00007f596510c3f5 in QThreadPrivate::start (arg=0x3b3e1c0) at thread/qthread_unix.cpp:188
#9  0x00007f5963419faa in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007f596466e29d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f596b715760 (LWP 7410)):
[KCrash Handler]
#5  Digikam::Album::title (this=0x57daa40) at /usr/include/qt4/QtCore/qatomic_x86_64.h:121
#6  0x000000000060b255 in Digikam::AlbumHistory::getBackwardHistory (this=0x3f2e570, list=@0x7fffd26706c0) at /tmp/buildd/digikam-1.0.0~beta3/digikam/albumhistory.cpp:236
#7  0x0000000000670084 in Digikam::DigikamView::getBackwardHistory (this=0x28f5940, titles=@0x57daa40) at /tmp/buildd/digikam-1.0.0~beta3/digikam/digikamview.cpp:1002
#8  0x00000000006495c5 in Digikam::DigikamApp::slotAboutToShowBackwardMenu (this=0x271a3e0) at /tmp/buildd/digikam-1.0.0~beta3/digikam/digikamapp.cpp:1284
#9  0x0000000000663e8d in Digikam::DigikamApp::qt_metacall (this=0x271a3e0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffd26707d0)
    at /tmp/buildd/digikam-1.0.0~beta3/obj-x86_64-linux-gnu/digikam/digikamapp.moc:206
#10 0x00007f5965207602 in QMetaObject::activate (sender=0x3e4d6b0, from_signal_index=<value optimized out>, to_signal_index=27, argv=0x3e0c7d0) at kernel/qobject.cpp:3112
#11 0x00007f59661b0ab8 in QMenu::popup (this=0x3e4d6b0, p=@0x7fffd2670a20, atAction=0x0) at widgets/qmenu.cpp:1790
#12 0x00007f59661b18d6 in QMenu::internalDelayedPopup (this=0x3f61080) at widgets/qmenu.cpp:2938
#13 0x00007f59661b59cf in QMenu::timerEvent (this=0x3f61080, e=<value optimized out>) at widgets/qmenu.cpp:2778
#14 0x00007f5965201b73 in QObject::event (this=0x3f61080, e=0x57daa40) at kernel/qobject.cpp:1074
#15 0x00007f5965e0635d in QWidget::event (this=0x3f61080, event=0x7fffd2671340) at kernel/qwidget.cpp:7946
#16 0x00007f59661b5c5b in QMenu::event (this=0x3f61080, e=0x7fffd2671340) at widgets/qmenu.cpp:2353
#17 0x00007f5965db67ad in QApplicationPrivate::notify_helper (this=0x25ceab0, receiver=0x3f61080, e=0x7fffd2671340) at kernel/qapplication.cpp:4056
#18 0x00007f5965dbe80a in QApplication::notify (this=0x7fffd26716d0, receiver=0x3f61080, e=0x7fffd2671340) at kernel/qapplication.cpp:4021
#19 0x00007f59671d0b2b in KApplication::notify (this=0x7fffd26716d0, receiver=0x3f61080, event=0x7fffd2671340) at ../../kdeui/kernel/kapplication.cpp:302
#20 0x00007f59651f249c in QCoreApplication::notifyInternal (this=0x7fffd26716d0, receiver=0x3f61080, event=0x7fffd2671340) at kernel/qcoreapplication.cpp:610
#21 0x00007f596521e7a6 in QTimerInfoList::activateTimers (this=0x25d2780) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#22 0x00007f596521ac1d in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:165
#23 0x00007f595f02af7a in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#24 0x00007f595f02e5f8 in ?? () from /usr/lib/libglib-2.0.so.0
#25 0x00007f595f02e7bc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#26 0x00007f596521ab7f in QEventDispatcherGlib::processEvents (this=0x259dbd0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:327
#27 0x00007f5965e4d5ef in QGuiEventDispatcherGlib::processEvents (this=0x7fffd2670610, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202
#28 0x00007f59651f0d62 in QEventLoop::processEvents (this=<value optimized out>, flags={i = -764996176}) at kernel/qeventloop.cpp:149
#29 0x00007f59651f1134 in QEventLoop::exec (this=0x7fffd26715f0, flags={i = -764996096}) at kernel/qeventloop.cpp:201
#30 0x00007f59651f33a4 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#31 0x0000000000735322 in main (argc=5, argv=0x7fffd2672428) at /tmp/buildd/digikam-1.0.0~beta3/digikam/main.cpp:184

Reported using DrKonqi
Comment 1 Andi Clemens 2009-08-07 08:22:49 UTC
My first thought was that maybe (*iter)->album pointer was empty.

But

#5  Digikam::Album::title (this=0x57daa40) at
/usr/include/qt4/QtCore/qatomic_x86_64.h:121

actually says that album was present (this=0x57daa40). Since you seem to use a 64bit system, this might be the cause of the error.

We could add a check for a valid album pointer, but I don't think this will solve your problem. Maybe this is a Qt issue, not a digiKam issue at all.

Marcel,
what do you think?
Comment 2 Marcel Wiesweg 2009-08-07 11:13:48 UTC
As usual, very difficult without reproducing it locally...
Comment 3 Andi Clemens 2009-10-06 13:41:39 UTC
This could have been fixed with my latest commits.
See 209207#c5 for details. It must be the same problem.
Although you don't seem to have used the context menu in a search view.

I'll try to reproduce the crash by browsing the menu...
Comment 4 Andi Clemens 2009-10-06 14:26:24 UTC
Hmm I just discovered that AlbumHistory is not working correctly.
For example browse through some normal albums, then date albums.
Using the history to return to the date based history items is not working.

Example history chain (dates and albums mixed):

test01
Paris 2007
September 2009 (date based)
June 2009 (date based)
test02

Switching to one of the album based history items is working fine, but using the date based items is not working correct. Regardless of what date based item I chose, it always selects "June 2009". Maybe this is the source of your crash, there were invalid items in the history chain after some browsing.
This also explains why Album::title() will crash. The pointer may seem valid, but it is not.

So it seems to be at least a little bit related to bug 209207.

Andi
Comment 5 Andi Clemens 2009-10-06 14:40:38 UTC
Ok I guess we have a big problem here:
I just browsed album folders only. After I while I looked into the History, and I saw that a GPSSearch folder item has been added to the history!
I never visited it.
Then I clicked on this item, and suddenly the whole history was erased, completely empty!
It didn't crash, but it is definitely a wrong and faulty behavior :-)

Andi
Comment 6 Andi Clemens 2009-10-08 15:54:29 UTC
SVN commit 1032780 by aclemens:

Avoid saving of history items when digiKam is just starting up. Somehow
GPSSearch aways added itself to the history list with an invalid widget pointer.

CCBUG:202886

 M  +11 -3     digikamview.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1032780
Comment 7 Andi Clemens 2009-10-08 16:02:57 UTC
There is still a chance for invalid history items:
We simply assume that when the current album has changed, we can get the corresponding widget with d->leftSideBar->getActiveTab() in DigikamView::slotAlbumSelected, but this is not always true.

When config is read on startup and the current album is set, a totally different (or even invalid) widget pointer can be returned and saved in the HistoryItem.

Artem,
at least your crash should be hopefully gone in the current SVN version.
But I guess the other problem I described in comment #4 is not yet fixed.
Comment 8 Andi Clemens 2009-10-09 02:12:19 UTC
SVN commit 1032964 by aclemens:

Fix datefolder items in AlbumHistory navigation
Now all issues in this report should be fixed, for the original crash report we
need to wait for a feedback.

CCBUG:202886

 M  +4 -6      digikamapp.cpp  
 M  +33 -22    digikamview.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1032964
Comment 9 Andi Clemens 2009-10-09 02:16:15 UTC
Hmm actually I'm pretty sure the crash is fixed now, so I will close this one.
If you experience the same crash with the exact backtrace again, feel free to re-open this report.