Bug 262070

Summary: Crash while using marble view
Product: [Applications] digikam Reporter: Julien Narboux <Julien>
Component: Geolocation-MarbleAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: 2.0.0   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 5.0.0
Sentry Crash Report:

Description Julien Narboux 2011-01-04 14:00:22 UTC
Application: digikam (2.0.0-beta1)
KDE Platform Version: 4.5.1 (KDE 4.5.1)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-24-generic i686
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:

In main view, using the marble tab, I was trying to select a region using a thumbnail.

-- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
[Current thread is 1 (Thread 0xb5bf8ac0 (LWP 30939))]

Thread 13 (Thread 0xb39b0b70 (LWP 30940)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x00a7b4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x02e969c7 in wait (this=0x920b13c, mutex=0x920b138, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#3  QWaitCondition::wait (this=0x920b13c, mutex=0x920b138, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#4  0x082a28de in Digikam::ScanController::run (this=0x9261dd0) at /home/jnarboux/digikam-2.0.0-beta1/core/digikam/scancontroller.cpp:599
#5  0x02e95df9 in QThreadPrivate::start (arg=0x9261dd0) at thread/qthread_unix.cpp:266
#6  0x00a76cc9 in start_thread (arg=0xb39b0b70) at pthread_create.c:304
#7  0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 12 (Thread 0xb31afb70 (LWP 30943)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x00a7b4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x02e969c7 in wait (this=0x96f86b0, mutex=0x96f86ac, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#3  QWaitCondition::wait (this=0x96f86b0, mutex=0x96f86ac, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#4  0x01c1f0d3 in Digikam::ParkingThread::run (this=0x96f86a0) at /home/jnarboux/digikam-2.0.0-beta1/core/libs/threads/threadmanager.cpp:119
#5  0x02e95df9 in QThreadPrivate::start (arg=0x96f86a0) at thread/qthread_unix.cpp:266
#6  0x00a76cc9 in start_thread (arg=0xb31afb70) at pthread_create.c:304
#7  0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 11 (Thread 0xb1644b70 (LWP 30946)):
#0  0x037eab09 in g_main_context_check () from /lib/libglib-2.0.so.0
#1  0x037eb45e in ?? () from /lib/libglib-2.0.so.0
#2  0x037eb848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x02fc659f in QEventDispatcherGlib::processEvents (this=0x9851ab8, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#4  0x02f96609 in QEventLoop::processEvents (this=0xb1644110, flags=) at kernel/qeventloop.cpp:149
#5  0x02f96a8a in QEventLoop::exec (this=0xb1644110, flags=...) at kernel/qeventloop.cpp:201
#6  0x02e92b7e in QThread::exec (this=0x98309e8) at thread/qthread.cpp:490
#7  0x02f7535b in QInotifyFileSystemWatcherEngine::run (this=0x98309e8) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x02e95df9 in QThreadPrivate::start (arg=0x98309e8) at thread/qthread_unix.cpp:266
#9  0x00a76cc9 in start_thread (arg=0xb1644b70) at pthread_create.c:304
#10 0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 10 (Thread 0xaae1fb70 (LWP 30950)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x00a7b884 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:236
#2  0x08fc1b3f in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 9 (Thread 0xaa213b70 (LWP 30951)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x053c5371 in select () at ../sysdeps/unix/syscall-template.S:82
#2  0x08fedf1c in xine_usec_sleep () from /usr/lib/libxine.so.1
#3  0x00000000 in ?? ()

Thread 8 (Thread 0xa9a12b70 (LWP 30952)):
#0  0x037eb44b in ?? () from /lib/libglib-2.0.so.0
#1  0x037eb848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#2  0x02fc659f in QEventDispatcherGlib::processEvents (this=0x98d3830, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#3  0x02f96609 in QEventLoop::processEvents (this=0xa9a12100, flags=) at kernel/qeventloop.cpp:149
#4  0x02f96a8a in QEventLoop::exec (this=0xa9a12100, flags=...) at kernel/qeventloop.cpp:201
#5  0x02e92b7e in QThread::exec (this=0x9ddccf0) at thread/qthread.cpp:490
#6  0x056ec81a in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so
#7  0x02e95df9 in QThreadPrivate::start (arg=0x9ddccf0) at thread/qthread_unix.cpp:266
#8  0x00a76cc9 in start_thread (arg=0xa9a12b70) at pthread_create.c:304
#9  0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 7 (Thread 0xa9211b70 (LWP 30953)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x053bddf6 in __poll (fds=0x5454ff4, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#2  0x00cc9562 in ?? () from /usr/lib/libpulse.so.0
#3  0x00cb5ab9 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
#4  0x00cb7a73 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
#5  0x00cb7b44 in pa_mainloop_run () from /usr/lib/libpulse.so.0
#6  0x00cc9303 in ?? () from /usr/lib/libpulse.so.0
#7  0x038b4bd5 in ?? () from /usr/lib/libpulsecommon-0.9.21.so
#8  0x00a76cc9 in start_thread (arg=0xa9211b70) at pthread_create.c:304
#9  0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 6 (Thread 0xa4a0fb70 (LWP 30954)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x00a7b4dc in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x08fd3b54 in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 5 (Thread 0xa3a0db70 (LWP 30959)):
#0  __pthread_mutex_unlock (mutex=0xb28428fc) at pthread_mutex_unlock.c:290
#1  0x037eae58 in g_main_context_prepare () from /lib/libglib-2.0.so.0
#2  0x037eb279 in ?? () from /lib/libglib-2.0.so.0
#3  0x037eb848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x02fc659f in QEventDispatcherGlib::processEvents (this=0xa576280, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#5  0x02f96609 in QEventLoop::processEvents (this=0xa3a0d110, flags=) at kernel/qeventloop.cpp:149
#6  0x02f96a8a in QEventLoop::exec (this=0xa3a0d110, flags=...) at kernel/qeventloop.cpp:201
#7  0x02e92b7e in QThread::exec (this=0xa1afb98) at thread/qthread.cpp:490
#8  0x02f7535b in QInotifyFileSystemWatcherEngine::run (this=0xa1afb98) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x02e95df9 in QThreadPrivate::start (arg=0xa1afb98) at thread/qthread_unix.cpp:266
#10 0x00a76cc9 in start_thread (arg=0xa3a0db70) at pthread_create.c:304
#11 0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 4 (Thread 0x87bb5b70 (LWP 31027)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x053da0f3 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95
#2  0x0536e65f in _L_lock_9687 () from /lib/libc.so.6
#3  0x0536ce56 in __libc_free (mem=0xbda2e40) at malloc.c:3736
#4  0x01897441 in operator delete(void*) () from /usr/lib/libstdc++.so.6
#5  0x02fc70b5 in QEventDispatcherGlib::unregisterSocketNotifier (this=0xc2a9888, notifier=0x87bb516c) at kernel/qeventdispatcher_glib.cpp:496
#6  0x02fb51da in QSocketNotifier::setEnabled (this=0xfffffe00, enable=false) at kernel/qsocketnotifier.cpp:298
#7  0x02fc6a02 in socketNotifierSourceCheck (source=0xd5d9598) at kernel/qeventdispatcher_glib.cpp:92
#8  0x037eab39 in g_main_context_check () from /lib/libglib-2.0.so.0
#9  0x037eb45e in ?? () from /lib/libglib-2.0.so.0
#10 0x037eb848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#11 0x02fc6565 in QEventDispatcherGlib::processEvents (this=0xc2a9888, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#12 0x02f96609 in QEventLoop::processEvents (this=0x87bb5110, flags=) at kernel/qeventloop.cpp:149
#13 0x02f96a8a in QEventLoop::exec (this=0x87bb5110, flags=...) at kernel/qeventloop.cpp:201
#14 0x02e92b7e in QThread::exec (this=0xd5e2668) at thread/qthread.cpp:490
#15 0x02f7535b in QInotifyFileSystemWatcherEngine::run (this=0xd5e2668) at io/qfilesystemwatcher_inotify.cpp:248
#16 0x02e95df9 in QThreadPrivate::start (arg=0xd5e2668) at thread/qthread_unix.cpp:266
#17 0x00a76cc9 in start_thread (arg=0x87bb5b70) at pthread_create.c:304
#18 0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 3 (Thread 0x8d951b70 (LWP 31052)):
#0  0x00a793eb in __pthread_mutex_lock (mutex=0x128b8d8c) at pthread_mutex_lock.c:61
#1  0x037eab68 in g_main_context_check () from /lib/libglib-2.0.so.0
#2  0x037eb45e in ?? () from /lib/libglib-2.0.so.0
#3  0x037eb848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x02fc659f in QEventDispatcherGlib::processEvents (this=0x10202348, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#5  0x02f96609 in QEventLoop::processEvents (this=0x8d951124, flags=) at kernel/qeventloop.cpp:149
#6  0x02f96a8a in QEventLoop::exec (this=0x8d951124, flags=...) at kernel/qeventloop.cpp:201
#7  0x01c1e33a in Digikam::WorkerObjectRunnable::run (this=0x167db518) at /home/jnarboux/digikam-2.0.0-beta1/core/libs/threads/threadmanager.cpp:190
#8  0x02e8a523 in QThreadPoolThread::run (this=0xc2af148) at concurrent/qthreadpool.cpp:106
#9  0x02e95df9 in QThreadPrivate::start (arg=0xc2af148) at thread/qthread_unix.cpp:266
#10 0x00a76cc9 in start_thread (arg=0x8d951b70) at pthread_create.c:304
#11 0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 2 (Thread 0xa1ed0b70 (LWP 31059)):
#0  0x00ffa416 in __kernel_vsyscall ()
#1  0x053da0f3 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95
#2  0x0536e65f in _L_lock_9687 () from /lib/libc.so.6
#3  0x0536ce56 in __libc_free (mem=0x150f5870) at malloc.c:3736
#4  0x01897441 in operator delete(void*) () from /usr/lib/libstdc++.so.6
#5  0x01a081c3 in Digikam::DSharedDataPointer<Digikam::DImgPrivate>::~DSharedDataPointer (this=0x1ca7aadc, __in_chrg=<value optimized out>) at /home/jnarboux/digikam-2.0.0-beta1/core/libs/dimg/dshareddata.h:165
#6  0x019faf43 in Digikam::DImg::~DImg (this=0x1ca7aadc, __in_chrg=<value optimized out>) at /home/jnarboux/digikam-2.0.0-beta1/core/libs/dimg/dimg.cpp:171
#7  0x01bee342 in Digikam::SharedLoadingTask::~SharedLoadingTask() () from /usr/lib/libdigikamcore.so.2
#8  0x01bfe2e3 in Digikam::ThumbnailLoadingTask::~ThumbnailLoadingTask() () from /usr/lib/libdigikamcore.so.2
#9  0x01bdb331 in Digikam::LoadSaveThread::run (this=0x97173c8) at /home/jnarboux/digikam-2.0.0-beta1/core/libs/threadimageio/loadsavethread.cpp:94
#10 0x01c2188a in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x9717aa0) at /home/jnarboux/digikam-2.0.0-beta1/core/libs/threads/dynamicthread.cpp:324
#11 0x02e8a523 in QThreadPoolThread::run (this=0xb2855cb0) at concurrent/qthreadpool.cpp:106
#12 0x02e95df9 in QThreadPrivate::start (arg=0xb2855cb0) at thread/qthread_unix.cpp:266
#13 0x00a76cc9 in start_thread (arg=0xa1ed0b70) at pthread_create.c:304
#14 0x053cc69e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb5bf8ac0 (LWP 30939)):
[KCrash Handler]
#7  _int_malloc (av=<value optimized out>, bytes=<value optimized out>) at malloc.c:4439
#8  0x0536da1c in _int_realloc (av=<value optimized out>, oldp=0x1c1a6ef0, oldsize=264, nb=520) at malloc.c:5290
#9  0x0536df53 in __libc_realloc (oldmem=0x1c1a6ef8, bytes=512) at malloc.c:3821
#10 0x02e90024 in qRealloc (ptr=0x1c1a6ef8, size=512) at global/qmalloc.cpp:65
#11 0x02ef0fcc in QVectorData::reallocate (x=0x54563c0, newsize=88433648, oldsize=256, alignment=18688) at tools/qvector.cpp:74
#12 0x0203f83d in QVector<QRect>::realloc (this=0x123ecba4, asize=16, aalloc=31) at ../../include/QtCore/../../src/corelib/tools/qvector.h:480
#13 0x021a2400 in QVector<QRect>::resize(int) () from /usr/lib/libQtGui.so.4
#14 0x0219b50d in miUnionO (dest=..., r1=0xdb20e78, r1End=0xdb20e98, r2=0x1934b6d8, r2End=0x1934b6e8, y1=555, y2=772) at painting/qregion.cpp:2422
#15 0x0219b9fa in miRegionOp (dest=<value optimized out>, reg1=<value optimized out>, reg2=0x157c5648, overlapFunc=0x219b1a0 <miUnionO(QRegionPrivate&, QRect const*, QRect const*, QRect const*, QRect const*, int, int)>, nonOverlap1Func=0x2198e60 <miUnionNonO(QRegionPrivate&, QRect const*, QRect const*, int, int)>, nonOverlap2Func=0x2198e60 <miUnionNonO(QRegionPrivate&, QRect const*, QRect const*, int, int)>) at painting/qregion.cpp:2280
#16 0x0219c02b in UnionRegion (reg1=0x123ecba0, reg2=0x157c5648, dest=...) at painting/qregion.cpp:2453
#17 0x021a04ba in QRegion::operator+= (this=0x93bdf84, r=...) at painting/qregion.cpp:4043
#18 0x0202ca2b in QWidgetPrivate::getOpaqueChildren (this=0x93bdf00) at kernel/qwidget.cpp:2010
#19 0x0202caa8 in QWidgetPrivate::getOpaqueChildren (this=0x93d8ed0) at kernel/qwidget.cpp:2004
#20 0x0202caa8 in QWidgetPrivate::getOpaqueChildren (this=0x92ee750) at kernel/qwidget.cpp:2004
#21 0x0202cb60 in QWidgetPrivate::subtractOpaqueChildren (this=0x54563c0, source=..., clipRect=...) at kernel/qwidget.cpp:2024
#22 0x02039c84 in QWidgetPrivate::drawWidget (this=0x92ee750, pdev=0x927da04, rgn=..., offset=..., flags=<value optimized out>, sharedPainter=0x0, backingStore=0x92757a8) at kernel/qwidget.cpp:5362
#23 0x0222ac74 in QWidgetBackingStore::sync (this=0x92757a8) at painting/qbackingstore.cpp:1328
#24 0x0202c2b3 in QWidgetPrivate::syncBackingStore (this=0x92ee750) at kernel/qwidget.cpp:1805
#25 0x02033466 in QWidget::event (this=0x9276f30, event=0x1036f200) at kernel/qwidget.cpp:8480
#26 0x02473917 in QMainWindow::event (this=0x9276f30, event=0x1036f200) at widgets/qmainwindow.cpp:1417
#27 0x02d4b8a4 in KMainWindow::event (this=0x9276f30, ev=0x1036f200) at ../../kdeui/widgets/kmainwindow.cpp:1100
#28 0x02d9414f in KXmlGuiWindow::event (this=0x9276f30, ev=0x1036f200) at ../../kdeui/xmlgui/kxmlguiwindow.cpp:130
#29 0x01fd4fdc in QApplicationPrivate::notify_helper (this=0x915d300, receiver=0x9276f30, e=0x1036f200) at kernel/qapplication.cpp:4396
#30 0x01fdb0e9 in QApplication::notify (this=0xbfdb6300, receiver=0x9276f30, e=0x1036f200) at kernel/qapplication.cpp:4361
#31 0x02c5568a in KApplication::notify (this=0xbfdb6300, receiver=0x9276f30, event=0x1036f200) at ../../kdeui/kernel/kapplication.cpp:310
#32 0x02f97b3b in QCoreApplication::notifyInternal (this=0xbfdb6300, receiver=0x9276f30, event=0x1036f200) at kernel/qcoreapplication.cpp:732
#33 0x02f9ad8b in sendEvent (receiver=0x0, event_type=0, data=0x912a3d0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#34 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x912a3d0) at kernel/qcoreapplication.cpp:1373
#35 0x02f9af4d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1266
#36 0x02fc6a74 in sendPostedEvents (s=0x915f710) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#37 postEventSourceDispatch (s=0x915f710) at kernel/qeventdispatcher_glib.cpp:277
#38 0x037e7855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#39 0x037eb668 in ?? () from /lib/libglib-2.0.so.0
#40 0x037eb848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#41 0x02fc6565 in QEventDispatcherGlib::processEvents (this=0x9129e98, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#42 0x02096be5 in QGuiEventDispatcherGlib::processEvents (this=0x9129e98, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#43 0x02f96609 in QEventLoop::processEvents (this=0xbfdb61d4, flags=) at kernel/qeventloop.cpp:149
#44 0x02f96a8a in QEventLoop::exec (this=0xbfdb61d4, flags=...) at kernel/qeventloop.cpp:201
#45 0x02f9b00f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#46 0x01fd3e07 in QApplication::exec () at kernel/qapplication.cpp:3672
#47 0x0830df4b in main (argc=5, argv=0xbfdb6554) at /home/jnarboux/digikam-2.0.0-beta1/core/digikam/main.cpp:232

Reported using DrKonqi
Comment 1 Marcel Wiesweg 2011-01-18 16:04:15 UTC
Backtrace is deep inside Qt. Can you reproduce this?
Comment 2 caulier.gilles 2011-07-02 10:02:02 UTC
digiKam 2.0.0 RC is out. Please check if crash is reproducible with this version.

Thanks in advance

Gilles Caulier
Comment 3 caulier.gilles 2011-11-03 12:41:52 UTC
digiKam 2.2.0 is out since few weeks. Crash still valid with this version ?

Gilles Caulier
Comment 4 caulier.gilles 2015-06-27 13:47:02 UTC
New digiKam 4.11.0 is available :

https://www.digikam.org/node/740

Can you reproduce the problem with this release ?

Gilles caulier
Comment 5 caulier.gilles 2015-08-22 06:38:53 UTC
digiKam 4.12.0 is out :

https://www.digikam.org/node/741

We need a fresh feedback using this release please...
Thanks in advance.
Comment 6 caulier.gilles 2016-07-02 18:56:05 UTC
With digiKam 5.0.0, this problem is not reproducible.

I close this file now. Re-open it if necessary.

Gilles Caulier