Bug 162678 - Marble widget crashed while loading
Summary: Marble widget crashed while loading
Status: RESOLVED FIXED
Alias: None
Product: marble
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Torsten Rahn
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-05-26 23:22 UTC by Bonnaud Frédéric
Modified: 2018-08-27 17:09 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 0.10.0


Attachments
Sample KML file, created by digikam (412 bytes, text/plain)
2008-05-31 07:41 UTC, jensmh
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bonnaud Frédéric 2008-05-26 23:22:56 UTC
Version:           digikam-0.10.0-0.809821.4mdv2009.0 (using Devel)
Installed from:    Compiled sources
OS:                Linux

When loading, digikam crash
it seems to scan my empty images directory well.
and 
======= here's whate digikam said on the konsole ======
[fred@gandalf ~]$ digikam                                                               
digikam(21405): SchemaUpdater update                                                    
digikam(21405): Have a database structure version  "5"                                  
digikam(21405): makeUpdates  5  to  5                                                   
digikam(21405): listFromType                                                            
digikam(21405): got listFromType                                                        
digikam(21405): Creating new Location  "/"  uuid  "volumeid:?path=%2Fhome%2Ffred%2FImages"
digikam(21405): location for  "/home/fred/Images/"  is available  true                    
digikam(21405)/kio (KDirWatch) KDirWatchPrivate::KDirWatchPrivate: Available methods:  ("Stat", "FAM", "INotify")
digikam(21405)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from  "/var/tmp/kdecache-fred/ksycoca4"                                                                                                                         
digikam(21405)/phonon (xine backend) Phonon::Xine::Backend::Backend: setting xine verbosity to 0                           
digikam(21405)/phonon (xine backend) Phonon::Xine::Backend::Backend: Using Xine version  1.1.12                            
digikam(21405) Phonon::KdePlatformPlugin::createBackend: using backend:  "Xine"                                            
digikam(21405)/phonon (audiodevicelist) Phonon::AudioDeviceEnumerator::availablePlaybackDevices: (                         
- "USB Device 0x471:0x329 ()" 1 ("/dev/dsp1") index: 11 preference: 25 avail: true advanced: false  ,                      
- "NVidia CK804 with ALC850" 0 ("x-phonon:CARD=0,DEV=0", "plughw:CARD=0,DEV=0") index: 1 preference: 36 avail: true advanced: false  ,                                                                                                                
- "NVidia CK804 with ALC850 S/PDIF" 0 ("x-phonon:CARD=0,DEV=2", "plughw:CARD=0,DEV=2") index: 2 preference: 15 avail: true advanced: true  ,                                                                                                          
- "NVidia CK804 with ALC850" 1 ("/dev/audio") index: 6 preference: 20 avail: true advanced: false  ,                       
- "USB Device 0x471:0x329 ()" 1 ("/dev/audio1") index: 11 preference: 25 avail: true advanced: false  ,                    
- "NVidia CK804 with ALC850" 1 ("/dev/adsp") index: 6 preference: 20 avail: true advanced: false  ,                        
- "NVidia CK804 with ALC850" 1 ("/dev/dsp") index: 6 preference: 20 avail: true advanced: false  ,                         
- "NVidia CK804, NVidia CK804 - IEC958 (IEC958 (S/PDIF) Digital Audio Output)" 0 ("iec958:CARD=CK804,DEV=0") index: 8 preference: 30 avail: true advanced: true  ,                                                                                    
- "PulseAudio Sound Server" 0 ("pulse") index: 9 preference: 30 avail: true advanced: false  ,                             
- "PulseAudio Sound Server" 0 ("default") index: 10 preference: 30 avail: true advanced: false  )                          
digikam(21405)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: isEmpty                                  
digikam(21405)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  pulseaudio                
digikam(21405)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  alsa                      
digikam(21405)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  oss                       
digikam(21405)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  file                      
digikam(21405)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  none                      
digikam(21405)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: 10000 "PulseAudio" "pulseaudio"          
digikam(21405)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: ----------------------------------------------- audio_port created                                                                                                           
digikam(21405)/phonon (xine backend) Phonon::Xine::AudioOutput::setOutputDevice: new audio port is invalid                 
digikam(21405)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: use ALSA device:  "default"                       
digikam(21405)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: ----------------------------------------------- audio_port created                                                                                                           
digikam(21405)/phonon (xine backend) Phonon::Xine::VideoWidget::updateZoom: QSize(-1, -1)                                  
digikam(21405)/phonon (xine backend) Phonon::Xine::VideoWidget::updateZoom: QSize(-1, -1)                                  
digikam(21405)/phonon (xine backend) Phonon::Xine::VideoWidget::updateZoom: QSize(100, 100) QSize(100, 30)                 
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  TransitionTypeChanged                                                                                                                  
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetTickInterval                                                                                                                        
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetPrefinishMark                                                                                                                       
digikam(21405)/phonon (xine backend) Phonon::Xine::Backend::connectNodes:                                                  
digikam(21405)/phonon (xine backend) Phonon::Xine::AudioOutput::graphChanged:                                              
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UpdateVolume
digikam(21405)/phonon (xine backend) Phonon::Xine::XineThread::event: XineThread Rewire event:                             
digikam(21405)/phonon (xine backend) Phonon::Xine::XineThread::event:       true  ->  true                                 
digikam(21405)/phonon (xine backend) Phonon::Xine::Backend::connectNodes:                                                  
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  RequestFrameFormat                                                                                                                     
digikam(21405)/phonon (xine backend) Phonon::Xine::XineThread::event: XineThread Rewire event:                             
digikam(21405)/phonon (xine backend) Phonon::Xine::XineThread::event:       true  ->  true                                 
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  GetStreamInfo                                                                                                                          
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  GetStreamInfo                                                                                                                          
digikam(21405)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetTickInterval                                                                                                                        
QFSFileEngine::open: No file name specified                                                                                
Cannot open file '', because: No file name specified                                                                       
Starting to load Plugins.                                                                                                  
cannot open ""  for reading                                                                                                
fstat error                                                                                                                
mmap error for input                                                                                                       
KCrash: crashing... crashRecursionCounter = 2                                                                              
KCrash: Application Name = digikam path = <unknown> pid = 21405                                                            
sock_file=/home/fred/.kde4/socket-gandalf/kdeinit4__0                                                                      
You have new mail in /var/spool/mail/fred                                                                                  
[fred@gandalf ~]$ mv Images Images-REAL
[fred@gandalf ~]$ mkdir Images         
[fred@gandalf ~]$ digikam
digikam(21634): SchemaUpdater update
digikam(21634): No database file available
digikam(21634): listFromType              
digikam(21634): got listFromType          
digikam(21634): No locale found in database
digikam(21634): No locale found in config file
digikam(21634): addLocation  KUrl("file:///home/fred/Images")
digikam(21634): listFromType                                 
digikam(21634): got listFromType                             
digikam(21634): Failed to detect a storage volume for path  "/home/fred/Images"  with Solid 

digikam(21634) DWarning: Unable to identify a path with Solid. Adding the location with path only. 

digikam(21634): listFromType
digikam(21634): got listFromType
digikam(21634): Creating new Location  "/"  uuid  "volumeid:?path=%2Fhome%2Ffred%2FImages"
digikam(21634): location for  "/home/fred/Images/"  is available  true                    
digikam(21634): Testing location  1 "/home/fred/Images" "/home/fred/Images/"              
digikam(21634)/kio (KDirWatch) KDirWatchPrivate::KDirWatchPrivate: Available methods:  ("Stat", "FAM", "INotify")
digikam(21634)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from  "/var/tmp/kdecache-fred/ksycoca4"                                                                                                                         
digikam(21634)/phonon (xine backend) Phonon::Xine::Backend::Backend: setting xine verbosity to 0                           
digikam(21634)/phonon (xine backend) Phonon::Xine::Backend::Backend: Using Xine version  1.1.12                            
digikam(21634) Phonon::KdePlatformPlugin::createBackend: using backend:  "Xine"                                            
digikam(21634)/phonon (audiodevicelist) Phonon::AudioDeviceEnumerator::availablePlaybackDevices: (                         
- "USB Device 0x471:0x329 ()" 1 ("/dev/dsp1") index: 11 preference: 25 avail: true advanced: false  ,                      
- "NVidia CK804 with ALC850" 0 ("x-phonon:CARD=0,DEV=0", "plughw:CARD=0,DEV=0") index: 1 preference: 36 avail: true advanced: false  ,                                                                                                                
- "NVidia CK804 with ALC850 S/PDIF" 0 ("x-phonon:CARD=0,DEV=2", "plughw:CARD=0,DEV=2") index: 2 preference: 15 avail: true advanced: true  ,                                                                                                          
- "NVidia CK804 with ALC850" 1 ("/dev/audio") index: 6 preference: 20 avail: true advanced: false  ,                       
- "USB Device 0x471:0x329 ()" 1 ("/dev/audio1") index: 11 preference: 25 avail: true advanced: false  ,                    
- "NVidia CK804 with ALC850" 1 ("/dev/adsp") index: 6 preference: 20 avail: true advanced: false  ,                        
- "NVidia CK804 with ALC850" 1 ("/dev/dsp") index: 6 preference: 20 avail: true advanced: false  ,                         
- "NVidia CK804, NVidia CK804 - IEC958 (IEC958 (S/PDIF) Digital Audio Output)" 0 ("iec958:CARD=CK804,DEV=0") index: 8 preference: 30 avail: true advanced: true  ,                                                                                    
- "PulseAudio Sound Server" 0 ("pulse") index: 9 preference: 30 avail: true advanced: false  ,                             
- "PulseAudio Sound Server" 0 ("default") index: 10 preference: 30 avail: true advanced: false  )                          
digikam(21634)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: isEmpty                                  
digikam(21634)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  pulseaudio                
digikam(21634)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  alsa                      
digikam(21634)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  oss                       
digikam(21634)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  file                      
digikam(21634)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: outputPlugin:  none                      
digikam(21634)/phonon (xine backend) Phonon::Xine::XineEngine::checkAudioOutputs: 10000 "PulseAudio" "pulseaudio"          
digikam(21634)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: ----------------------------------------------- audio_port created                                                                                                           
digikam(21634)/phonon (xine backend) Phonon::Xine::AudioOutput::setOutputDevice: new audio port is invalid                 
digikam(21634)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: use ALSA device:  "default"                       
digikam(21634)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: ----------------------------------------------- audio_port created                                                                                                           
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  TransitionTypeChanged                                                                                                                  
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetTickInterval                                                                                                                        
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetPrefinishMark                                                                                                                       
digikam(21634)/phonon (xine backend) Phonon::Xine::Backend::connectNodes:                                                  
digikam(21634)/phonon (xine backend) Phonon::Xine::AudioOutput::graphChanged:                                              
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UpdateVolume
digikam(21634)/phonon (xine backend) Phonon::Xine::XineThread::event: XineThread Rewire event:                             
digikam(21634)/phonon (xine backend) Phonon::Xine::XineThread::event:       true  ->  true                                 
digikam(21634)/phonon (xine backend) Phonon::Xine::Backend::connectNodes:
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  RequestFrameFormat
digikam(21634)/phonon (xine backend) Phonon::Xine::XineThread::event: XineThread Rewire event:
digikam(21634)/phonon (xine backend) Phonon::Xine::XineThread::event:       true  ->  true
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  GetStreamInfo
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  GetStreamInfo
digikam(21634)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetTickInterval
QFSFileEngine::open: No file name specified
Cannot open file '', because: No file name specified
Starting to load Plugins.
cannot open ""  for reading
fstat error
mmap error for input
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = digikam path = <unknown> pid = 21634
sock_file=/home/fred/.kde4/socket-gandalf/kdeinit4__0
======= end =======


======= here's what kcrash said to send ======
Application: digiKam (digikam), signal SIGSEGV
(no debugging symbols found)
Using host libthread_db library "/lib64/libthread_db.so.1".
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread 139973983270656 (LWP 21634)]
[New Thread 1150490960 (LWP 21660)]
[New Thread 1142098256 (LWP 21659)]
[New Thread 1133705552 (LWP 21658)]
[New Thread 1125312848 (LWP 21657)]
[New Thread 1085380944 (LWP 21656)]
[New Thread 1099057488 (LWP 21640)]
[New Thread 1116920144 (LWP 21638)]
[New Thread 1108527440 (LWP 21635)]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[KCrash handler]
#5  0x00007f4e31619bd8 in QAbstractItemModel::sort ()
   from /usr/lib64/libmarblewidget.so.4
#6  0x00007f4e31643bfb in QAbstractItemModel::sort ()
   from /usr/lib64/libmarblewidget.so.4
#7  0x00007f4e315fd93d in MarbleModel::MarbleModel ()
   from /usr/lib64/libmarblewidget.so.4
#8  0x00007f4e31602370 in MarbleMap::MarbleMap ()
   from /usr/lib64/libmarblewidget.so.4
#9  0x00007f4e315fbb40 in MarbleWidget::MarbleWidget ()
   from /usr/lib64/libmarblewidget.so.4
#10 0x00000000004b5929 in Digikam::WorldMapWidget::WorldMapWidget ()
#11 0x000000000049ede2 in Digikam::ImagePropertiesGPSTab::ImagePropertiesGPSTab ()
#12 0x00007f4e3b15fbbd in Digikam::ImagePropertiesSideBar::ImagePropertiesSideBar$base () from /usr/lib64/libdigikam.so.1
#13 0x00000000004a20ed in Digikam::ImagePropertiesSideBarDB::ImagePropertiesSideBarDB ()
#14 0x00000000005a231e in ?? ()
#15 0x000000000059ad9d in Digikam::DigikamApp::setupView ()
#16 0x000000000059bc7b in Digikam::DigikamApp::DigikamApp ()
#17 0x00000000005c2309 in ?? ()
#18 0x00007f4e30467324 in __libc_start_main () from /lib64/libc.so.6
#19 0x0000000000472fc9 in _start ()
#0  0x00007f4e304e3bc1 in nanosleep () from /lib64/libc.so.6
======= end =======
Comment 1 caulier.gilles 2008-05-27 12:10:17 UTC
Frédéric,

Sorry, but 0.10.0 still in alpha code. we cannot accept bug report yet.

Also, your backtrace bring me about marble widget internal crash that i can reproduce here ! It's duing an uncomplete KML import method in marble widget. This will be fixed in the future by marble team. 

See below the same crash using marble widget debug info. a class instance is null. this is why marble widget (and digiKam) crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1261414704 (LWP 18867)]
MarblePlacemarkModel::coordinateData (this=0x0, index=@0xa127dd8)
    at /home/gilles/Documents/Devel/SVN/trunk/kdeedu/marble/src/lib/MarblePlacemarkModel.cpp:100
100         return d->m_placeMarkContainer.at( index.row() )->coordinate();
(gdb) bt
#0  MarblePlacemarkModel::coordinateData (this=0x0, index=@0xa127dd8)
    at /home/gilles/Documents/Devel/SVN/trunk/kdeedu/marble/src/lib/MarblePlacemarkModel.cpp:100
#1  0xb5b8cda4 in PlaceMarkLayout::paintPlaceFolder (this=0xa737388, painter=0xbfb83594, viewParams=0x8c02694, model=0xa10c7d8, selectionModel=0xa106a98,
    firstTime=true) at /home/gilles/Documents/Devel/SVN/trunk/kdeedu/marble/src/lib/PlaceMarkLayout.cpp:333
#2  0xb5b327e1 in MarbleModel::paintGlobe (this=0x8c05d10, painter=0xbfb83594, width=268, height=745, viewParams=0x8c02694, redrawBackground=true,
    dirtyRect=@0xbfb8360c) at /home/gilles/Documents/Devel/SVN/trunk/kdeedu/marble/src/lib/MarbleModel.cpp:510
#3  0xb5b3ac24 in MarbleMap::paint (this=0x8c02620, painter=@0xbfb83594, dirtyRect=@0xbfb8360c)
    at /home/gilles/Documents/Devel/SVN/trunk/kdeedu/marble/src/lib/MarbleMap.cpp:882
#4  0xb5b2d22a in MarbleWidget::paintEvent (this=0x8c02458, evt=0xbfb83a54)
    at /home/gilles/Documents/Devel/SVN/trunk/kdeedu/marble/src/lib/MarbleWidget.cpp:766
#5  0xb6e5fb50 in QWidget::event () from /usr/lib/qt4/lib/libQtGui.so.4
#6  0xb6e191c2 in QApplicationPrivate::notify_helper () from /usr/lib/qt4/lib/libQtGui.so.4
#7  0xb6e1f899 in QApplication::notify () from /usr/lib/qt4/lib/libQtGui.so.4
#8  0xb7944281 in KApplication::notify () from /opt/kde4/lib/libkdeui.so.5
#9  0xb7e81378 in QCoreApplication::notifyInternal () from /usr/lib/qt4/lib/libQtCore.so.4
#10 0xb6e6854d in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#11 0xb6f8006a in QWidgetPrivate::drawWidget () from /usr/lib/qt4/lib/libQtGui.so.4
#12 0xb6f7fac3 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#13 0xb6f7fcb0 in QWidgetPrivate::drawWidget () from /usr/lib/qt4/lib/libQtGui.so.4
#14 0xb6f7fac3 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#15 0xb6f7fcb0 in QWidgetPrivate::drawWidget () from /usr/lib/qt4/lib/libQtGui.so.4
#16 0xb6f7fac3 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#17 0xb6f7fcb0 in QWidgetPrivate::drawWidget () from /usr/lib/qt4/lib/libQtGui.so.4
#18 0xb6f7fac3 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#19 0xb6f7fcb0 in QWidgetPrivate::drawWidget () from /usr/lib/qt4/lib/libQtGui.so.4
#20 0xb6f7fac3 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#21 0xb6f7fcb0 in QWidgetPrivate::drawWidget () from /usr/lib/qt4/lib/libQtGui.so.4
#22 0xb6f7fac3 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#23 0xb6f7f99f in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#24 0xb6f7fcb0 in QWidgetPrivate::drawWidget () from /usr/lib/qt4/lib/libQtGui.so.4
#25 0xb6f809d8 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#26 0xb6f81395 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#27 0xb6e5fe36 in QWidget::event () from /usr/lib/qt4/lib/libQtGui.so.4
#28 0xb7133985 in QFrame::event () from /usr/lib/qt4/lib/libQtGui.so.4
#29 0xb7137813 in QLabel::event () from /usr/lib/qt4/lib/libQtGui.so.4
#30 0xb6e191c2 in QApplicationPrivate::notify_helper () from /usr/lib/qt4/lib/libQtGui.so.4
#31 0xb6e1f899 in QApplication::notify () from /usr/lib/qt4/lib/libQtGui.so.4
#32 0xb7944281 in KApplication::notify () from /opt/kde4/lib/libkdeui.so.5
#33 0xb7e81378 in QCoreApplication::notifyInternal () from /usr/lib/qt4/lib/libQtCore.so.4
#34 0xb7e82912 in QCoreApplicationPrivate::sendPostedEvents () from /usr/lib/qt4/lib/libQtCore.so.4
#35 0xb7e82b7c in QCoreApplication::sendPostedEvents () from /usr/lib/qt4/lib/libQtCore.so.4
#36 0xb6e9581c in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtGui.so.4
#37 0xb7e807e3 in QEventLoop::processEvents () from /usr/lib/qt4/lib/libQtCore.so.4
#38 0xb7e808ea in QEventLoop::exec () from /usr/lib/qt4/lib/libQtCore.so.4
#39 0xb7e82c46 in QCoreApplication::exec () from /usr/lib/qt4/lib/libQtCore.so.4
#40 0xb6e18884 in QApplication::exec () from /usr/lib/qt4/lib/libQtGui.so.4
#41 0x082810a1 in main (argc=1, argv=0xbfb854f4) at /home/gilles/Documents/Devel/SVN/trunk/graphics/digikam/digikam/main.cpp:326



Gilles Caulier
Comment 2 caulier.gilles 2008-05-27 19:11:48 UTC
Code using marble widget in digiKam is here :

http://websvn.kde.org/trunk/extragear/graphics/digikam/libs/imageproperties/worldmapwidget.cpp?revision=807385&view=markup

Gilles Caulier
Comment 3 caulier.gilles 2008-05-27 19:17:08 UTC
Valgrind BT :

TextureTile::loadRawTile end
m_depth = 8
MarbleModel::paintTile:  x:  2 y: 0 level:  1 requestTileUpdate false
TextureTile::loadRawTile end
m_depth = 8
MarbleModel::paintTile:  x:  3 y: 0 level:  1 requestTileUpdate false
TextureTile::loadRawTile end
m_depth = 8
MarbleModel::paintTile:  x:  1 y: 0 level:  1 requestTileUpdate false
TextureTile::loadRawTile end
m_depth = 8
MarbleModel::paintTile:  x:  0 y: 0 level:  1 requestTileUpdate false
TextureTile::loadRawTile end
m_depth = 8
MarbleModel::paintTile:  x:  0 y: 1 level:  1 requestTileUpdate false
TextureTile::loadRawTile end
m_depth = 8
MarbleModel::paintTile:  x:  1 y: 1 level:  1 requestTileUpdate false
TextureTile::loadRawTile end
m_depth = 8
MarbleModel::paintTile:  x:  3 y: 1 level:  1 requestTileUpdate false
RESET started
RESET stopped
Detecting maxLabelHeight ...
==11084==
==11084== Conditional jump or move depends on uninitialised value(s)
==11084==    at 0xF53EACD: CompassFloatItem::needsUpdate(ViewportParams*) (CompassFloatItem.cpp:90)
==11084==    by 0x63A6DD8: MarbleAbstractFloatItem::render(GeoPainter*, ViewportParams*, QString const&, GeoSceneLayer*) (MarbleAbstractFloatItem.cpp:347)
==11084==    by 0x63A4116: LayerManager::renderLayers(GeoPainter*, ViewportParams*, GeoSceneLayer*) (LayerManager.cpp:50)
==11084==    by 0x637A0B1: MarbleModel::paintGlobe(GeoPainter*, int, int, ViewParams*, bool, QRect const&) (MarbleModel.cpp:558)
==11084==    by 0x637FA8B: MarbleMap::paint(GeoPainter&, QRect&) (MarbleMap.cpp:882)
==11084==    by 0x6375FD4: MarbleWidget::paintEvent(QPaintEvent*) (MarbleWidget.cpp:766)
==11084==    by 0x4C3BB4F: QWidget::event(QEvent*) (in /usr/lib/qt4/lib/libQtGui.so.4.3.4)
==11084==    by 0x4BF51C1: QApplicationPrivate::notify_helper(QObject*, QEvent*) (in /usr/lib/qt4/lib/libQtGui.so.4.3.4)
==11084==    by 0x4BFB898: QApplication::notify(QObject*, QEvent*) (in /usr/lib/qt4/lib/libQtGui.so.4.3.4)
==11084==    by 0x71DB137: ???
Polarity 1
Starting KML-Import
==11084==
==11084== Invalid read of size 4
==11084==    at 0x639719C: MarblePlacemarkModel::coordinateData(QModelIndex const&) const (MarblePlacemarkModel.cpp:100)
==11084==    by 0x63B795D: PlaceMarkLayout::paintPlaceFolder(QPainter*, ViewParams*, QAbstractItemModel const*, QItemSelectionModel const*, bool) (PlaceMarkLayout.cpp:333)
==11084==    by 0x637A0FC: MarbleModel::paintGlobe(GeoPainter*, int, int, ViewParams*, bool, QRect const&) (MarbleModel.cpp:510)
==11084==    by 0x637FA8B: MarbleMap::paint(GeoPainter&, QRect&) (MarbleMap.cpp:882)
==11084==    by 0x6375FD4: MarbleWidget::paintEvent(QPaintEvent*) (MarbleWidget.cpp:766)
==11084==    by 0x4C3BB4F: QWidget::event(QEvent*) (in /usr/lib/qt4/lib/libQtGui.so.4.3.4)
==11084==    by 0x4BF51C1: QApplicationPrivate::notify_helper(QObject*, QEvent*) (in /usr/lib/qt4/lib/libQtGui.so.4.3.4)
==11084==    by 0x4BFB898: QApplication::notify(QObject*, QEvent*) (in /usr/lib/qt4/lib/libQtGui.so.4.3.4)
==11084==    by 0x71DB137: ???
==11084==  Address 0x8 is not stack'd, malloc'd or (recently) free'd
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = digikam path = <unknown> pid = 11084
sock_file=/home/gilles/.kde4/socket-localhost/kdeinit4__0
kdeinit4: Got EXEC_NEW '/opt/kde4/lib/kde4/libexec/drkonqi' from socket.
kdeinit4: preparing to launch /opt/kde4/lib/kde4/libexec/drkonqi
kdeinit4: PID 11220 terminated.

Gilles Caulier
Comment 4 caulier.gilles 2008-05-27 19:19:40 UTC
How to reproduce the crash in digiKam:

1/ add an image with GPS data.
2/ select it in iconview
3/ open Geolocation tab from right sidebar
4/ GPS data are loaded in marble widget as a KML file => crash

Note: with marblewidget 0.5.1 and the same version of digiKam, there is no crash!

Gilles Caulier
Comment 5 jensmh 2008-05-31 05:38:37 UTC
I can confirm this bug.

The KML file which digikam creates can be read with Marble without problem.

Jens-Michael Hoffmann
Comment 6 jensmh 2008-05-31 07:36:10 UTC
I have to correct my last comment (#5):

Marble sometimes crashes after loading the KML file.

Jens-Michael Hoffmann
Comment 7 jensmh 2008-05-31 07:41:55 UTC
Created attachment 25023 [details]
Sample KML file, created by digikam
Comment 8 jensmh 2008-06-02 09:12:09 UTC
SVN commit 815548 by jmhoffmann:

    Fix bug 162678.
    Connect PlacemarkSelectionModel and MarblePlacemarkModel to valid
    PlaceMarkLayout object, not to null pointer.

BUG: 162678


 M  +8 -0      ChangeLog  
 M  +9 -6      src/lib/MarbleModel.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=815548
Comment 9 caulier.gilles 2008-06-02 09:33:51 UTC
I confirm: crash diseapear now under digiKam. Thanks for the fix.

Gilles Caulier