Summary: | Crash during picture import [KDirWatch::contains, Digikam::AlbumManager::addAlbumRoot, Digikam::AlbumManager::slotCollectionLocationStatusChanged] | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | Gareth <gareth.glaccum> |
Component: | Database-Albums | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | andresbajotierra, caulier.gilles, cfeck, dreibh, kenjarvis, majoky, simon.schaak, stefan.wolmarans |
Priority: | NOR | ||
Version: | 1.6.0 | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 1.8.0 | |
Sentry Crash Report: | |||
Attachments: | New crash information added by DrKonqi |
Description
Gareth
2010-10-23 18:08:58 UTC
Problem already reported in the past. It's KDELibs crash. Gilles Caulier *** This bug has been marked as a duplicate of bug 222974 *** According to the other bug report, this appears to have been put into kdelib 4.4.1? The system I am running reports kdelibs as being 4.5.2 Is it possible that it was linked to the wrong bug? The crash is in KDirWatch API, not digiKam... Gilles Caulier Gilles, the crash is completely different to the old (common) KDirWatch crash. I doubt the problem is in kdelibs. Could you check if it is possible you are not calling with a valid KDirWatch object? The contains() function is quite simple, it probably only crashes on invalid input. No. Crash appear in KDELIbs : Thread 1 (Thread 0xb78937b0 (LWP 25054)): [KCrash Handler] #7 0x024911b3 in KDirWatch::contains(QString const&) const () from /usr/lib/libkdecore.so.5 #8 0x0824a173 in Digikam::AlbumManager::addAlbumRoot (this=0x8befa80, location=...) at /usr/local/src/digikam/digikam/digikam/albummanager.cpp:1131 #9 0x08255749 in Digikam::AlbumManager::slotCollectionLocationStatusChanged digiKam register KDirWatch component to query which file have been added during import. This is used to scan new items in digiKam DB. The problem with KDirwatch is not a new stuff... Gilles Caulier I searched bugzilla for "KDirWatch::contains" and only found the issue in KDevelop CMake handling. Other than that, there has never been a crash in that function. It certainly isn't an old problem :) Seeing that you are calling with an invalid KDirWatch object in bug 256867, I think you should check here, too. *** Bug 256867 has been marked as a duplicate of this bug. *** There is a situation in setDatabase where the dirwatch is null for some time. I dont know the exact problem, but there is a pattern to these backtraces SVN commit 1197259 by mwiesweg: Dont delete the dir watch to clear it, just keep it and store the added directories to explicitly remove them. Object is deleted by QObject destructor at shutdown. Should prevent any situation where d->dirwatch is 0. CCBUG: 255054 M +11 -10 albummanager.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1197259 Gareth, svn trunk is patched by MArcel. Please compile/install and test this code. Thanks in advance Gilles Caulier digiKam 1.6.0 is out: http://www.digikam.org/drupal/node/550 Please update and check if this entry still valid. Thanks in advance Gilles Caulier *** Bug 258002 has been marked as a duplicate of this bug. *** Gareth, can you test with digiKam 1.6.0 ? Gilles Caulier [Comment from a bug triager] From bug 261228 (Digikam 1.4.0): - What I was doing when the application crashed: I plugged a flash drive into the usb port while digikam was running. Instead of doing nothing, digikam crashed. There were no albums (or anything else related to digikam) on the flash drive, just two jpg files. *** Bug 261228 has been marked as a duplicate of this bug. *** Created attachment 55418 [details]
New crash information added by DrKonqi
digikam (1.4.0) on KDE Platform 4.5.4 (KDE 4.5.4) using Qt 4.7.0
- What I was doing when the application crashed:
I have clicked on another folder in my Pictures directory, containing about 3000 images not yet previewed by digikam -> digikam started to create previews -> crash.
-- Backtrace (Reduced):
#6 KDirWatch::contains (this=0x0, _path=...) at ../../kdecore/io/kdirwatch.cpp:1830
#7 0x000000000063d598 in Digikam::AlbumManager::addAlbumRoot (this=0x25686b0, location=...) at /build/buildd/digikam-1.4.0/digikam/albummanager.cpp:1131
#8 0x0000000000645ca1 in Digikam::AlbumManager::slotCollectionLocationStatusChanged (this=0x25686b0, location=..., oldStatus=0) at /build/buildd/digikam-1.4.0/digikam/albummanager.cpp:1102
#9 0x0000000000647d75 in Digikam::AlbumManager::qt_metacall (this=0x25686b0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff40521970) at /build/buildd/digikam-1.4.0/obj-x86_64-linux-gnu/digikam/albummanager.moc:185
[...]
#11 0x00007fa67d5c6053 in Digikam::CollectionManager::locationStatusChanged (this=0x0, _t1=<value optimized out>, _t2=0) at /build/buildd/digikam-1.4.0/obj-x86_64-linux-gnu/digikam/collectionmanager.moc:108
This bug have been fixed in recent version of digiKam (>= 1.6.0). you compile 1.4.0. Why ? Always use last stable version available ! Gilles Caulier *** Bug 261740 has been marked as a duplicate of this bug. *** I'm pretty confident this is really fixed. |