Version: 0.9 (svn) (using KDE KDE 3.5.2) Installed from: Compiled From Sources OS: Linux with current svn (it's been there for a while) : open an album, move it to another album -> crash.
Without a full and suitable gdb backtrace, we cannot do anything... Gilles
not even try to reproduce it ? :-)
Run digikam under gdb like this : #gdb digikam > run ... crash ... >bt and report me the backtrace Thanks in advance Gilles
#0 0xb7dc5eaa in Digikam::ThumbnailJob::removeItem (this=0x0, url=@0xbfc252ac) at thumbnailjob.cpp:160 #1 0xb7d35973 in Digikam::AlbumFolderView::slotAlbumDeleted (this=0x828b578, album=0x8372150) at albumfolderview.cpp:282 #2 0xb7d38ab4 in Digikam::AlbumFolderView::qt_invoke (this=0x828b578, _id=85, _o=0xbfc25384) at albumfolderview.moc:141 #3 0xb6afdc01 in QObject::activate_signal () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #4 0xb7d0ac22 in Digikam::AlbumManager::signalAlbumDeleted (this=0x8140748, t0=0x8372150) at albummanager.moc:163 #5 0xb7d0baf4 in Digikam::AlbumManager::removePAlbum (this=0x8140748, album=0x8372150) at albummanager.cpp:1208 #6 0xb7d0dc87 in Digikam::AlbumManager::scanPAlbums (this=0x8140748) at albummanager.cpp:398 #7 0xb7d0e07e in Digikam::AlbumManager::refresh (this=0x8140748) at albummanager.cpp:327 #8 0xb7d6ae72 in DIO::Watch::slotDone (this=0x8392c08) at dio.cpp:232 #9 0xb7d6af00 in DIO::Watch::qt_invoke (this=0x8392c08, _id=2, _o=0xbfc25644) at dio_p.moc:85 #10 0xb6afdc01 in QObject::activate_signal () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #11 0xb7603e86 in KIO::Job::result () from /opt/kde3.5/lib/libkio.so.4 #12 0xb7659a39 in KIO::Job::emitResult () from /opt/kde3.5/lib/libkio.so.4 #13 0xb765ab7d in KIO::CopyJob::setNextDirAttribute () from /opt/kde3.5/lib/libkio.so.4 #14 0xb765ad07 in KIO::CopyJob::deleteNextDir () from /opt/kde3.5/lib/libkio.so.4 #15 0xb765b634 in KIO::CopyJob::copyNextFile () from /opt/kde3.5/lib/libkio.so.4 #16 0xb765c784 in KIO::CopyJob::createNextDir () from /opt/kde3.5/lib/libkio.so.4 #17 0xb765cd26 in KIO::CopyJob::statCurrentSrc () from /opt/kde3.5/lib/libkio.so.4 #18 0xb765d78b in KIO::CopyJob::statNextSrc () from /opt/kde3.5/lib/libkio.so.4 #19 0xb7661c8b in KIO::CopyJob::slotResultRenaming () from /opt/kde3.5/lib/libkio.so.4 #20 0xb766315d in KIO::CopyJob::slotResult () from /opt/kde3.5/lib/libkio.so.4 #21 0xb7657470 in KIO::CopyJob::qt_invoke () from /opt/kde3.5/lib/libkio.so.4 #22 0xb6afdca4 in QObject::activate_signal () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #23 0xb7603e86 in KIO::Job::result () from /opt/kde3.5/lib/libkio.so.4 #24 0xb7659a39 in KIO::Job::emitResult () from /opt/kde3.5/lib/libkio.so.4 #25 0xb76603fb in KIO::SimpleJob::slotFinished () from /opt/kde3.5/lib/libkio.so.4 #26 0xb7659398 in KIO::SimpleJob::qt_invoke () from /opt/kde3.5/lib/libkio.so.4 #27 0xb6afdca4 in QObject::activate_signal () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #28 0xb6afe585 in QObject::activate_signal () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #29 0xb75fd2da in KIO::SlaveInterface::finished () from /opt/kde3.5/lib/libkio.so.4 #30 0xb764ec9a in KIO::SlaveInterface::dispatch () from /opt/kde3.5/lib/libkio.so.4 #31 0xb763e297 in KIO::SlaveInterface::dispatch () from /opt/kde3.5/lib/libkio.so.4 #32 0xb761023b in KIO::Slave::gotInput () from /opt/kde3.5/lib/libkio.so.4 #33 0xb763f769 in KIO::Slave::qt_invoke () from /opt/kde3.5/lib/libkio.so.4 #34 0xb6afdca4 in QObject::activate_signal () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #35 0xb6afe497 in QObject::activate_signal () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #36 0xb6df732a in QSocketNotifier::activated () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #37 0xb6b195e1 in QSocketNotifier::event () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #38 0xb6aa391b in QApplication::internalNotify () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #39 0xb6aa45e2 in QApplication::notify () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #40 0xb718932a in KApplication::notify () from /opt/kde3.5/lib/libkdecore.so.4 #41 0xb6a98cbb in QEventLoop::activateSocketNotifiers () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #42 0xb6a58789 in QEventLoop::processEvents () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #43 0xb6ab8cfa in QEventLoop::enterLoop () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #44 0xb6ab8bb4 in QEventLoop::exec () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #45 0xb6aa3641 in QApplication::exec () from /home/opt/qt-x11-free-3.3.6/lib/libqt-mt.so.3 #46 0x0804a768 in main (argc=1, argv=0xbfc26bd4) at main.cpp:273 #1 0xb7d35973 in Digikam::AlbumFolderView::slotAlbumDeleted (this=0x828b578, album=0x8372150) at albumfolderview.cpp:282 282 d->iconThumbJob->removeItem(palbum->icon()); (gdb) p *d $1 = {albumMan = 0x8140748, iconThumbJob = 0x0, groupItems = {sh = 0x82862c0}}
Given that the fix was obvious and trivial, I took the liberty to commit it The fault was : if(!palbum->icon().isEmpty() && !d->iconThumbJob) d->iconThumbJob->removeItem(palbum->icon()); which obviously should be : if(!palbum->icon().isEmpty() && d->iconThumbJob) d->iconThumbJob->removeItem(palbum->icon());
*** Bug has been marked as fixed ***.
Right. Thanks for this Fix Guillaume (:=))) Gilles
SVN commit 545051 by cgilles: digikam from stable : backport of commit #545017 by glaurent CCBUGS: 128069 M +1 -1 albumfolderview.cpp --- branches/stable/extragear/graphics/digikam/digikam/albumfolderview.cpp #545050:545051 @@ -267,7 +267,7 @@ if(!palbum) return; - if(!palbum->icon().isEmpty() && !d->iconThumbJob) + if(!palbum->icon().isEmpty() && d->iconThumbJob) d->iconThumbJob->removeItem(palbum->icon()); AlbumFolderViewItem* item = (AlbumFolderViewItem*) palbum->extraData(this);