Bug 276633

Summary: Crash when using map view inside of digikam
Product: [Applications] digikam Reporter: Francesco Riosa <vivo75+kde>
Component: Geolocation-GoogleMapsAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles, mike, vivo75+kde
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 6.0.0
Attachments: New crash information added by DrKonqi
New crash information added by DrKonqi

Description Francesco Riosa 2011-06-27 19:46:25 UTC
Application: digikam (2.0.0-rc)
KDE Platform Version: 4.6.4 (4.6.4) (Compiled from sources)
Qt Version: 4.7.3
Operating System: Linux 2.6.39.1 x86_64
Distribution (Platform): Gentoo Packages

-- Information about the crash:
- selected "map" button
- navigate somewhere in the world
- chose to view with "google Maps"

-- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
82	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f33ab1a1820 (LWP 22521))]

Thread 6 (Thread 0x7f3385ec8700 (LWP 22522)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f33a29d229f in wait (this=<value optimized out>, mutex=0x2518298, time=<value optimized out>) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2518298, time=<value optimized out>) at thread/qwaitcondition_unix.cpp:160
#3  0x00000000005db4f6 in Digikam::ScanController::run (this=0x2547da0) at /srv/git/digikam-sc/core/digikam/database/scancontroller.cpp:618
#4  0x00007f33a29d1a8a in QThreadPrivate::start (arg=0x2547da0) at thread/qthread_unix.cpp:320
#5  0x00007f33a273dcb0 in start_thread (arg=0x7f3385ec8700) at pthread_create.c:301
#6  0x00007f33a176c0ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 5 (Thread 0x7f33856c7700 (LWP 22523)):
#0  0x00007f33a0fb59ce in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#1  0x00007f33a0fb686d in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f33a0fb6f09 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f33a2af8e46 in QEventDispatcherGlib::processEvents (this=0x2533f80, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f33a2ac9562 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f33a2ac97a5 in QEventLoop::exec (this=0x7f33856c6d20, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007f33a29cedb8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:492
#7  0x00007f33a2aa9480 in QInotifyFileSystemWatcherEngine::run (this=0x252b0f0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f33a29d1a8a in QThreadPrivate::start (arg=0x252b0f0) at thread/qthread_unix.cpp:320
#9  0x00007f33a273dcb0 in start_thread (arg=0x7f33856c7700) at pthread_create.c:301
#10 0x00007f33a176c0ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 4 (Thread 0x7f3384ec6700 (LWP 22530)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f33a29d229f in wait (this=<value optimized out>, mutex=0x25c95e8, time=<value optimized out>) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x25c95e8, time=<value optimized out>) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f33a7a73a13 in Digikam::ParkingThread::run (this=0x25c95d0) at /srv/git/digikam-sc/core/libs/threads/threadmanager.cpp:119
#4  0x00007f33a29d1a8a in QThreadPrivate::start (arg=0x25c95d0) at thread/qthread_unix.cpp:320
#5  0x00007f33a273dcb0 in start_thread (arg=0x7f3384ec6700) at pthread_create.c:301
#6  0x00007f33a176c0ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 3 (Thread 0x7f337fdc8700 (LWP 22616)):
#0  0x00007f33a2af9eb6 in QTimerInfoList::repairTimersIfNeeded (this=0x7189440) at kernel/qeventdispatcher_unix.cpp:395
#1  0x00007f33a2af9f36 in QTimerInfoList::timerWait (this=0x7189440, tm=...) at kernel/qeventdispatcher_unix.cpp:443
#2  0x00007f33a2af860c in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x7f337fdc7b90) at kernel/qeventdispatcher_glib.cpp:136
#3  0x00007f33a2af86b5 in timerSourcePrepare (source=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#4  0x00007f33a0fb5972 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#5  0x00007f33a0fb686d in ?? () from /usr/lib64/libglib-2.0.so.0
#6  0x00007f33a0fb6f09 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#7  0x00007f33a2af8e46 in QEventDispatcherGlib::processEvents (this=0x64a1560, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#8  0x00007f33a2ac9562 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#9  0x00007f33a2ac97a5 in QEventLoop::exec (this=0x7f337fdc7d20, flags=...) at kernel/qeventloop.cpp:201
#10 0x00007f33a29cedb8 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:492
#11 0x00007f33a2aa9480 in QInotifyFileSystemWatcherEngine::run (this=0x6ee2550) at io/qfilesystemwatcher_inotify.cpp:248
#12 0x00007f33a29d1a8a in QThreadPrivate::start (arg=0x6ee2550) at thread/qthread_unix.cpp:320
#13 0x00007f33a273dcb0 in start_thread (arg=0x7f337fdc8700) at pthread_create.c:301
#14 0x00007f33a176c0ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7f3365983700 (LWP 22637)):
#0  pthread_cond_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007f33a29d21b8 in wait (this=<value optimized out>, mutex=0x5ae4ae0, time=<value optimized out>) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x5ae4ae0, time=<value optimized out>) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f33a29c519f in QThreadPoolThread::run (this=0x58ded10) at concurrent/qthreadpool.cpp:140
#4  0x00007f33a29d1a8a in QThreadPrivate::start (arg=0x58ded10) at thread/qthread_unix.cpp:320
#5  0x00007f33a273dcb0 in start_thread (arg=0x7f3365983700) at pthread_create.c:301
#6  0x00007f33a176c0ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7f33ab1a1820 (LWP 22521)):
[KCrash Handler]
#6  KJS::JSValue::type (this=<value optimized out>) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/value.h:452
#7  0x00007f33a5b5807e in KJS::equal (exec=0x7fff576b5f30, v1=0x80, v2=0x3) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/operations.cpp:116
#8  0x00007f33a5b8e283 in KJS::Machine::runBlock (exec=0x7fff576b5f30, codeBlock=..., parentExec=0x7fff576b66e0) at codes.def:1071
#9  0x00007f33a5b70a1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0x7fff576b66e0, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#10 0x00007f33a5b8ec67 in KJS::Machine::runBlock (exec=0x7fff576b66e0, codeBlock=..., parentExec=0x7fff576b6e90) at codes.def:1223
#11 0x00007f33a5b70a1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0x7fff576b6e90, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#12 0x00007f33a5b8ec67 in KJS::Machine::runBlock (exec=0x7fff576b6e90, codeBlock=..., parentExec=0x7fff576b7640) at codes.def:1223
#13 0x00007f33a5b70a1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0x7fff576b7640, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#14 0x00007f33a5b8ec67 in KJS::Machine::runBlock (exec=0x7fff576b7640, codeBlock=..., parentExec=0x7fff576b7df0) at codes.def:1223
#15 0x00007f33a5b70a1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0x7fff576b7df0, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#16 0x00007f33a5b8ec67 in KJS::Machine::runBlock (exec=0x7fff576b7df0, codeBlock=..., parentExec=0x7fff576b85a0) at codes.def:1223
#17 0x00007f33a5b70a1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0x7fff576b85a0, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#18 0x00007f33a5b8ec67 in KJS::Machine::runBlock (exec=0x7fff576b85a0, codeBlock=..., parentExec=0xb844f70) at codes.def:1223
#19 0x00007f33a5b70a1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0xb844f70, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#20 0x00007f33a9d97694 in KJS::ScheduledAction::execute (this=0xc66ca80, window=0x7f3384060000) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/khtml/ecma/kjs_window.cpp:2283
#21 0x00007f33a9da1c51 in KJS::WindowQObject::timerEvent (this=0xb8363e0) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/khtml/ecma/kjs_window.cpp:2458
#22 0x00007f33a2ae0ce9 in QObject::event (this=0xb8363e0, e=<value optimized out>) at kernel/qobject.cpp:1181
#23 0x00007f33a371cea4 in QApplicationPrivate::notify_helper (this=0x2399300, receiver=0xb8363e0, e=0x7fff576b8f80) at kernel/qapplication.cpp:4462
#24 0x00007f33a3722351 in QApplication::notify (this=<value optimized out>, receiver=0xb8363e0, e=0x7fff576b8f80) at kernel/qapplication.cpp:4341
#25 0x00007f33a44d3bed in KApplication::notify (this=0x7fff576b93b0, receiver=0xb8363e0, event=0x7fff576b8f80) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kdeui/kernel/kapplication.cpp:311
#26 0x00007f33a2acaa9b in QCoreApplication::notifyInternal (this=0x7fff576b93b0, receiver=0xb8363e0, event=0x7fff576b8f80) at kernel/qcoreapplication.cpp:731
#27 0x00007f33a2afbe36 in sendEvent (this=0x239cac0) at kernel/qcoreapplication.h:215
#28 QTimerInfoList::activateTimers (this=0x239cac0) at kernel/qeventdispatcher_unix.cpp:604
#29 0x00007f33a2af86f8 in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:184
#30 idleTimerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:231
#31 0x00007f33a0fb649d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#32 0x00007f33a0fb6c78 in ?? () from /usr/lib64/libglib-2.0.so.0
#33 0x00007f33a0fb6f09 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#34 0x00007f33a2af8def in QEventDispatcherGlib::processEvents (this=0x234a5b0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#35 0x00007f33a37ce03e in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#36 0x00007f33a2ac9562 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#37 0x00007f33a2ac97a5 in QEventLoop::exec (this=0x7fff576b9210, flags=...) at kernel/qeventloop.cpp:201
#38 0x00007f33a2acecb9 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#39 0x00000000006b4a37 in main (argc=1, argv=0x7fff576b9aa8) at /srv/git/digikam-sc/core/digikam/main/main.cpp:232

Reported using DrKonqi
Comment 1 Francesco Riosa 2011-06-27 19:52:33 UTC
trying to move this to konqueror/kjs
Comment 2 Francesco Riosa 2011-06-27 19:54:37 UTC
Created attachment 61384 [details]
New crash information added by DrKonqi

digikam (2.0.0-rc) on KDE Platform 4.6.4 (4.6.4) using Qt 4.7.3

same as the above, different location ...

-- Backtrace (Reduced):
#6  KJS::JSValue::type (this=<value optimized out>) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/value.h:452
#7  0x00007fa04f03407e in KJS::equal (exec=0x7fffca7c5160, v1=0x80, v2=0x3) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/operations.cpp:116
#8  0x00007fa04f06a283 in KJS::Machine::runBlock (exec=0x7fffca7c5160, codeBlock=..., parentExec=0x7fffca7c5910) at codes.def:1071
#9  0x00007fa04f04ca1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0x7fffca7c5910, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#10 0x00007fa04f06ac67 in KJS::Machine::runBlock (exec=0x7fffca7c5910, codeBlock=..., parentExec=0x7fffca7c60c0) at codes.def:1223
Comment 3 Francesco Riosa 2011-06-27 19:56:05 UTC
Created attachment 61385 [details]
New crash information added by DrKonqi

digikam (2.0.0-rc) on KDE Platform 4.6.4 (4.6.4) using Qt 4.7.3

the problem is exclusively related to the use of google maps inside marble, other backend does not have this problem

-- Backtrace (Reduced):
#6  KJS::JSValue::type (this=<value optimized out>) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/value.h:452
#7  0x00007fcf3ebf307e in KJS::equal (exec=0x7fffd058b020, v1=0x80, v2=0x3) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/operations.cpp:116
#8  0x00007fcf3ec29283 in KJS::Machine::runBlock (exec=0x7fffd058b020, codeBlock=..., parentExec=0x7fffd058b7d0) at codes.def:1071
#9  0x00007fcf3ec0ba1a in KJS::FunctionImp::callAsFunction (this=<value optimized out>, exec=0x7fffd058b7d0, thisObj=<value optimized out>, args=...) at /usr/src/debug/kde-base/kdelibs-4.6.4-r1/kdelibs-4.6.4/kjs/function.cpp:172
#10 0x00007fcf3ec29c67 in KJS::Machine::runBlock (exec=0x7fffd058b7d0, codeBlock=..., parentExec=0x7fffd058bf80) at codes.def:1223
Comment 4 Michael G. Hansen 2011-06-27 20:52:30 UTC
Actually, we do not use KHTML inside Marble. We use either Marble or KHTML, they are both displayed in a KMapWidget ;-) Still, the crash could be due to the interaction of KMapWidget with KHTML...

Michael
Comment 5 caulier.gilles 2018-08-10 09:48:24 UTC
Since digiKam do not use KHTML with Map view since a while, this problem is not more reproducible.