Bug 178252

Summary: Crash on startup - unknown reason
Product: [Applications] marble Reporter: Mark Purcell <msp>
Component: generalAssignee: marble-bugs
Status: RESOLVED DUPLICATE    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Mark Purcell 2008-12-20 05:03:28 UTC
Version:           0.10.0-beta7 (using Devel)
Compiler:          gcc version 4.3.2 (Debian 4.3.2-1) 
OS:                Linux
Installed from:    Compiled sources

When starting up with correct pictures dir (not $HOME), digikam crashes for both a fresh user and an pre-existing KDE4 user:

$ digikam
digikam(26988) Digikam::DigikamFirstRun::DigikamFirstRun: "/home/rachael"
digikam(26988) DirectoryListThread::run: Failed to open dir: "/home/rachae/"
digikam(26988) Phonon::KdePlatformPlugin::createBackend: using backend:  "Xine"
Starting to load Plugins.                                                      
Files:  "CompassFloatItem.so"                                                  
Files:  "MapScaleFloatItem.so"                                                 
Files:  "MarbleCrosshairsPlugin.so"                                            
Files:  "MarbleGeoDataPlugin.so"                                               
Files:  "MarbleOverviewMap.so"                                                 
Files:  "MarbleStarsPlugin.so"                                                 
Files:  "NavigationFloatItem.so"                                               
=== MarbleDirs: ===                                                            
Local Path: "/home/rachael/.marble/data"                                       
Plugin Local Path: "/home/rachael/.marble/plugins"                             
                                                                               
Marble Data Path (Run Time) : ""                                               
Marble Data Path (Compile Time): "/usr/share/kde4/apps/marble/data"            
                                                                               
Marble Plugin Path (Run Time) : ""                                             
Marble Plugin Path (Compile Time): "/usr/lib/kde4/plugins/marble"              
                                                                               
System Path: "/usr/share/kde4/apps/marble/data"                                
Plugin System Path: "/usr/lib/kde4/plugins/marble"                             
===================                                                            
"CompassFloatItem.so"  -  "/usr/lib/kde4/plugins/marble/CompassFloatItem.so"   
"MapScaleFloatItem.so"  -  "/usr/lib/kde4/plugins/marble/MapScaleFloatItem.so" 
"MarbleCrosshairsPlugin.so"  -  "/usr/lib/kde4/plugins/marble/MarbleCrosshairsPlugin.so" 
"MarbleGeoDataPlugin.so"  -  "/usr/lib/kde4/plugins/marble/MarbleGeoDataPlugin.so"       
"MarbleOverviewMap.so"  -  "/usr/lib/kde4/plugins/marble/MarbleOverviewMap.so"           
"MarbleStarsPlugin.so"  -  "/usr/lib/kde4/plugins/marble/MarbleStarsPlugin.so"           
"NavigationFloatItem.so"  -  "/usr/lib/kde4/plugins/marble/NavigationFloatItem.so"       
Use workaround:  0                                                                       
loadMapTheme "earth/citylights/citylights.dgml"                                          
loadMapTheme "earth/bluemarble/bluemarble.dgml"                                          
MapThemeId "earth/srtm/srtm.dgml"                                                        
loadMapTheme "earth/srtm/srtm.dgml"                                                      
DGML2 Name       :  "Atlas"                                                              
Style reset requested.                                                                   
THEME CHANGED: *** "earth/srtm/srtm.dgml"                                                
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/cityplacemarks.cache" 
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/elevplacemarks.cache" 
Loading ended true                                                                                      
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/baseplacemarks.cache" 
Loading ended true                                                                                      
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/otherplacemarks.cache" 
Loading ended true                                                                                       
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/boundaryplacemarks.cache" 
Loading ended true                                                                                          
Loading ended true                                                                                          
Starting to load Plugins.                                                                                   
Files:  "CompassFloatItem.so"                                                                               
Files:  "MapScaleFloatItem.so"                                                                              
Files:  "MarbleCrosshairsPlugin.so"                                                                         
Files:  "MarbleGeoDataPlugin.so"                                                                            
Files:  "MarbleOverviewMap.so"                                                                              
Files:  "MarbleStarsPlugin.so"                                                                              
Files:  "NavigationFloatItem.so"                                                                            
=== MarbleDirs: ===                                                                                         
Local Path: "/home/rachael/.marble/data"                                                                    
Plugin Local Path: "/home/rachael/.marble/plugins"                                                          
                                                                                                            
Marble Data Path (Run Time) : ""
Marble Data Path (Compile Time): "/usr/share/kde4/apps/marble/data"

Marble Plugin Path (Run Time) : ""
Marble Plugin Path (Compile Time): "/usr/lib/kde4/plugins/marble"

System Path: "/usr/share/kde4/apps/marble/data"
Plugin System Path: "/usr/lib/kde4/plugins/marble"
===================
"CompassFloatItem.so"  -  "/usr/lib/kde4/plugins/marble/CompassFloatItem.so"
"MapScaleFloatItem.so"  -  "/usr/lib/kde4/plugins/marble/MapScaleFloatItem.so"
"MarbleCrosshairsPlugin.so"  -  "/usr/lib/kde4/plugins/marble/MarbleCrosshairsPlugin.so"
"MarbleGeoDataPlugin.so"  -  "/usr/lib/kde4/plugins/marble/MarbleGeoDataPlugin.so"
"MarbleOverviewMap.so"  -  "/usr/lib/kde4/plugins/marble/MarbleOverviewMap.so"
"MarbleStarsPlugin.so"  -  "/usr/lib/kde4/plugins/marble/MarbleStarsPlugin.so"
"NavigationFloatItem.so"  -  "/usr/lib/kde4/plugins/marble/NavigationFloatItem.so"
Use workaround:  0
loadMapTheme "earth/citylights/citylights.dgml"
loadMapTheme "earth/bluemarble/bluemarble.dgml"
MapThemeId "earth/srtm/srtm.dgml"
loadMapTheme "earth/srtm/srtm.dgml"
DGML2 Name       :  "Atlas"
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/baseplacemarks.cache"
Loading ended true
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/elevplacemarks.cache"
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/cityplacemarks.cache"
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/otherplacemarks.cache"
Loading ended true
Loading ended true
Style reset requested.
"Loading Default Placemark Cache File:/usr/share/kde4/apps/marble/data/placemarks/boundaryplacemarks.cache"
Loading ended true
THEME CHANGED: *** "earth/srtm/srtm.dgml"
Loading ended true
start generate indexes
generated indexes
Style reset requested.
start generate indexes
generated indexes
Style reset requested.
KCrash: Application 'digikam' crashing...


Application: digiKam (digikam), signal SIGSEGV
[Current thread is 0 (LWP 26988)]

Thread 9 (Thread 0xb2df0b90 (LWP 27050)):
#0  0xb7f96424 in __kernel_vsyscall ()
#1  0xb5176025 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb5be375d in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libc.so.6
#3  0xb5dc9542 in QWaitCondition::wait (this=0x9b66bd4, mutex=0x9b66bd0, time=4294967295) at thread/qwaitcondition_unix.cpp:82
#4  0x0827e601 in Digikam::ScanController::run (this=0x9b6b540) at /home/mark/src/kde-extras/build-area/digikam-0.10.0~beta7/digikam/scancontroller.cpp:386
#5  0xb5dc852e in QThreadPrivate::start (arg=0x9b6b540) at thread/qthread_unix.cpp:185
#6  0xb51724c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb5bd561e in clone () from /lib/i686/cmov/libc.so.6

Thread 8 (Thread 0xb1d63b90 (LWP 27053)):
#0  0xb7f96424 in __kernel_vsyscall ()
#1  0xb5176025 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb5be375d in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libc.so.6
#3  0xb5dc9542 in QWaitCondition::wait (this=0x9ba0258, mutex=0x9ba0254, time=4294967295) at thread/qwaitcondition_unix.cpp:82
#4  0xb7695532 in Digikam::LoadSaveThread::run (this=0x9ba0248) at /home/mark/src/kde-extras/build-area/digikam-0.10.0~beta7/libs/threadimageio/loadsavethread.cpp:129
#5  0xb5dc852e in QThreadPrivate::start (arg=0x9ba0248) at thread/qthread_unix.cpp:185
#6  0xb51724c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb5bd561e in clone () from /lib/i686/cmov/libc.so.6

Thread 7 (Thread 0xb2564b90 (LWP 27054)):
#0  0xb7f96424 in __kernel_vsyscall ()
#1  0xb5176025 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb5be375d in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libc.so.6
#3  0xb5dc9542 in QWaitCondition::wait (this=0x9b9b488, mutex=0x9b9b484, time=4294967295) at thread/qwaitcondition_unix.cpp:82
#4  0xb7695532 in Digikam::LoadSaveThread::run (this=0x9b9b478) at /home/mark/src/kde-extras/build-area/digikam-0.10.0~beta7/libs/threadimageio/loadsavethread.cpp:129
#5  0xb5dc852e in QThreadPrivate::start (arg=0x9b9b478) at thread/qthread_unix.cpp:185
#6  0xb51724c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb5bd561e in clone () from /lib/i686/cmov/libc.so.6

Thread 6 (Thread 0xaf2a6b90 (LWP 27055)):
#0  0xb7f96424 in __kernel_vsyscall ()
#1  0xb5176352 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb5be37b4 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/cmov/libc.so.6
#3  0xb006f3ff in ?? () from /usr/lib/libxine.so.1

Thread 5 (Thread 0xae626b90 (LWP 27056)):
#0  0xb7f96424 in __kernel_vsyscall ()
#1  0xb5bcd9f1 in select () from /lib/i686/cmov/libc.so.6
#2  0xb009abd8 in xine_usec_sleep () from /usr/lib/libxine.so.1
#3  0x00000000 in ?? ()

Thread 4 (Thread 0xade25b90 (LWP 27057)):
#0  0xb4ea354a in clock_gettime () from /lib/i686/cmov/librt.so.1
#1  0xb5ee420b in QTimerInfoList::getTime (this=0xa0a7294, t=@0xa0a72b8) at kernel/qeventdispatcher_unix.cpp:335
#2  0xb5ee43e1 in QTimerInfoList::updateCurrentTime (this=0xa0a7294) at kernel/qeventdispatcher_unix.cpp:293
#3  0xb5ee60ec in QTimerInfoList::timerWait (this=0xa0a7294, tm=@0xade25164) at kernel/qeventdispatcher_unix.cpp:416
#4  0xb5ee27ba in timerSourcePrepare (source=0xb4ea6ff4, timeout=0xade251b8) at kernel/qeventdispatcher_glib.cpp:136
#5  0xb4fb60b2 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#6  0xb4fb653a in ?? () from /usr/lib/libglib-2.0.so.0
#7  0x0a0a6998 in ?? ()
#8  0xade25228 in ?? ()
#9  0x09c15798 in ?? ()
#10 0x00000001 in ?? ()
#11 0xb502eb08 in ?? () from /usr/lib/libglib-2.0.so.0
#12 0xb502e758 in ?? () from /usr/lib/libglib-2.0.so.0
#13 0xb5176ed5 in pthread_getspecific () from /lib/i686/cmov/libpthread.so.0
#14 0xa1650000 in ?? ()
#15 0x00000048 in ?? ()

Thread 3 (Thread 0xad563b90 (LWP 27077)):
#0  0xb7f96424 in __kernel_vsyscall ()
#1  0xb5176025 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb5be375d in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libc.so.6
#3  0xb5dc9542 in QWaitCondition::wait (this=0xbbb1928, mutex=0xbbb1924, time=4294967295) at thread/qwaitcondition_unix.cpp:82
#4  0xb7695532 in Digikam::LoadSaveThread::run (this=0xbbb1918) at /home/mark/src/kde-extras/build-area/digikam-0.10.0~beta7/libs/threadimageio/loadsavethread.cpp:129
#5  0xb5dc852e in QThreadPrivate::start (arg=0xbbb1918) at thread/qthread_unix.cpp:185
#6  0xb51724c0 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb5bd561e in clone () from /lib/i686/cmov/libc.so.6

Thread 2 (Thread 0xac483b90 (LWP 27086)):
#0  0xb7f96424 in __kernel_vsyscall ()
#1  0xb5176025 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb5be375d in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libc.so.6
#3  0xacc8064f in ?? () from /usr/lib/libjack.so.0
#4  0xacc8f6e0 in ?? () from /usr/lib/libjack.so.0
#5  0xacc8f6c4 in ?? () from /usr/lib/libjack.so.0
#6  0xacc8f6e0 in ?? () from /usr/lib/libjack.so.0
#7  0xb5181ff4 in ?? () from /lib/i686/cmov/libpthread.so.0
#8  0x00000000 in ?? ()

Thread 1 (Thread 0xb491b6c0 (LWP 26988)):
[KCrash Handler]
#6  0xb56790b3 in Marble::AbstractLayerData::setPosition (this=0xbbfddb0, lat=@0x20, lon=@0x28) at ../../../../marble/src/lib/AbstractLayer/AbstractLayerData.cpp:125
#7  0xb566f5f4 in Marble::GpsTracking::update (this=0xbbfd798, canvasSize=@0xbfeb1060, viewParams=0xbbdcb74, reg=@0xbfeb1068) at ../../../../marble/src/lib/gps/GpsTracking.cpp:203
#8  0xb5673705 in Marble::GpsLayer::updateGps (this=0xbbfe4f0, canvasSize=@0xbfeb1060, viewParams=0xbbdcb74, reg=@0xbfeb1068) at ../../../../marble/src/lib/gps/GpsLayer.cpp:55
#9  0xb55e87ee in Marble::MarbleMap::updateGps (this=0xbbdcae0) at ../../../../marble/src/lib/MarbleMap.cpp:1106
#10 0xb55ed8d7 in Marble::MarbleMap::qt_metacall (this=0xbbdcae0, _c=QMetaObject::InvokeMetaMethod, _id=57, _a=0xbfeb1138) at ./MarbleMap.moc:258
#11 0xb5eccbd0 in QMetaObject::activate (sender=0xbbdd0b0, from_signal_index=8, to_signal_index=8, argv=0x0) at kernel/qobject.cpp:3031
#12 0xb5ecd952 in QMetaObject::activate (sender=0xbbdd0b0, m=0xb56a16cc, local_signal_index=4, argv=0x0) at kernel/qobject.cpp:3101
#13 0xb55e1d57 in Marble::MarbleModel::timeout (this=0xbbdd0b0) at ./MarbleModel.moc:136
#14 0xb55e5d1b in Marble::MarbleModel::qt_metacall (this=0xbbdd0b0, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfeb1248) at ./MarbleModel.moc:92
#15 0xb5eccbd0 in QMetaObject::activate (sender=0xbbfb068, from_signal_index=4, to_signal_index=4, argv=0x0) at kernel/qobject.cpp:3031
#16 0xb5ecd952 in QMetaObject::activate (sender=0xbbfb068, m=0xb5f9b0a4, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3101
#17 0xb5f07857 in QTimer::timeout (this=0xbbfb068) at .moc/release-shared/moc_qtimer.cpp:126
#18 0xb5ed357e in QTimer::timerEvent (this=0xbbfb068, e=0xbfeb16dc) at kernel/qtimer.cpp:257
#19 0xb5ec76af in QObject::event (this=0xbbfb068, e=0xbfeb16dc) at kernel/qobject.cpp:1120
#20 0xb638579c in QApplicationPrivate::notify_helper (this=0x97c40a8, receiver=0xbbfb068, e=0xbfeb16dc) at kernel/qapplication.cpp:3803
#21 0xb638d61e in QApplication::notify (this=0xbfeb2200, receiver=0xbbfb068, e=0xbfeb16dc) at kernel/qapplication.cpp:3393
#22 0xb6ead73d in KApplication::notify (this=0xbfeb2200, receiver=0xbbfb068, event=0xbfeb16dc) at ../../kdeui/kernel/kapplication.cpp:307
#23 0xb5eb80d1 in QCoreApplication::notifyInternal (this=0xbfeb2200, receiver=0xbbfb068, event=0xbfeb16dc) at kernel/qcoreapplication.cpp:587
#24 0xb5ee6031 in QTimerInfoList::activateTimers (this=0x97c710c) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:209
#25 0xb5ee2680 in timerSourceDispatch (source=0x97c70d8) at kernel/qeventdispatcher_glib.cpp:160
#26 0xb4fb31b8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#27 0xb4fb6853 in ?? () from /usr/lib/libglib-2.0.so.0
#28 0x097c6458 in ?? ()
#29 0x00000000 in ?? ()

Kernel: Linux 2.6.26-1-686 (SMP w/2 CPU cores)
Locale: LANG=en_AU, LC_CTYPE=en_AU (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/bash

Versions of packages digikam depends on:
ii  kdebase-runtime   4:4.1.85+svn898692-0r1 runtime components from the offici
ii  kdelibs5          4:4.1.85+svn898648-0r1 core libraries for all KDE 4 appli
ii  kdepimlibs5       4:4.1.85+svn898651-0r1 core libraries for KDE PIM 4 appli
ii  libc6             2.7-16                 GNU C Library: Shared libraries
ii  libgcc1           1:4.3.2-1              GCC support library
ii  libgphoto2-2      2.4.1-3                gphoto2 digital camera library
ii  libgphoto2-port0  2.4.1-3                gphoto2 digital camera port librar
ii  libjasper1        1.900.1-5.1            The JasPer JPEG-2000 runtime libra
ii  libjpeg62         6b-14                  The Independent JPEG Group's JPEG
ii  libkdcraw7        4:4.1.85+svn896592-0r1 Raw picture decoding C++ library (
ii  libkexiv2-7       4:4.1.85+svn896592-0r1 Qt like interface for the libexiv2
ii  libkipi6          4:4.1.85+svn896592-0r1 library for apps that want to use
ii  liblcms1          1.17.dfsg-1            Color management library
ii  libmarble4        4:4.1.85+svn898806-0r1 Marble globe widget library
ii  libphonon4        4:4.2.80+svn895355-0r1 Phonon multimedia framework for Qt
ii  libpng12-0        1.2.27-2               PNG library - runtime
ii  libqt4-dbus       4.4.3-1                Qt 4 D-Bus module
ii  libqt4-network    4.4.3-1                Qt 4 network module
ii  libqt4-qt3support 4.4.3-1                Qt 3 compatibility library for Qt
ii  libqt4-sql        4.4.3-1                Qt 4 SQL module
ii  libqt4-sql-sqlite 4.4.3-1                Qt 4 SQLite 3 database driver
ii  libqt4-svg        4.4.3-1                Qt 4 SVG module
ii  libqt4-xml        4.4.3-1                Qt 4 XML module
ii  libqtcore4        4.4.3-1                Qt 4 core module
ii  libqtgui4         4.4.3-1                Qt 4 GUI module
ii  libstdc++6        4.3.2-1                The GNU Standard C++ Library v3
ii  libtiff4          3.8.2-11               Tag Image File Format (TIFF) libra
ii  marble            4:4.1.85+svn898806-0r1 Marble globe and map widget
ii  phonon            4:4.2.80+svn895355-0r1 metapackage for Phonon multimedia
ii  zlib1g            1:1.2.3.3.dfsg-12      compression library - runtime
Comment 1 Mark Purcell 2008-12-20 05:35:59 UTC
I have worked this through I think I know what is occurring.

digikam blocks on marble, which blocks on gpsd which blocks awaiting my GPS device to provide current coordinates.

Setup:

I have a bluetooth GPS device which I have configured GPS to provide location services to any applications who request them, via gpsd.

Marble on startup checks to see if location services are available via the gpsd socket, and if so presents your current location on the marble maps.

digikam calls marble api on startup and does block if marble is blocking.

Tests:

gpsd running, bluetooth gps device off:
1. digikam crashes on startup. (after a delay)
2. marble starts slowly on command line, but is not responsive

gpsd running, bluetooth gps device on:
1. digikam startup is good, and causes marble/ gpsd to make bluetooth connection - my location is displayed on embedded marble globe in digikam - excellent ;-)
2. marble startup is good - location showed on globe.

disable gpsd:
1. digikam startup is good & quick.
2. marble startup is good & quick. - no location services (as expected)

possible fixes:
1. ensure digikam doesn't block on marble issues
2. ensure marble doesn't block on gpsd issues.
Comment 2 Mark Purcell 2008-12-20 05:51:45 UTC
Marble are tracking this issue as:

https://bugs.kde.org/show_bug.cgi?id=171548
Comment 3 caulier.gilles 2008-12-20 09:05:01 UTC
Yes, it's a crash in Marble. Re-assigned.

Gilles Caulier

*** This bug has been marked as a duplicate of bug 171548 ***