[Digikam-devel] [digikam] [Bug 347753] surface freezes after some faces tagged

Gilles Caulier caulier.gilles at gmail.com
Wed May 20 20:23:53 BST 2015


https://bugs.kde.org/show_bug.cgi?id=347753

--- Comment #9 from Gilles Caulier <caulier.gilles at gmail.com> ---
Alan,

The backtrace available in Exiv2 report is clear :

(gdb) bt
#0  0x00007ffff0f494c0 in __cxa_throw () from /usr/lib64/libstdc++.so.6
#1  0x00007fffee5cea56 in Exiv2::XmpProperties::nsInfo(std::string const&) ()
from /usr/lib64/libexiv2.so.13
#2  0x00007fffee5ceb30 in Exiv2::XmpProperties::ns(std::string const&) () from
/usr/lib64/libexiv2.so.13
#3  0x00007fffee5cf36b in Exiv2::XmpKey::Impl::decomposeKey(std::string const&)
() from /usr/lib64/libexiv2.so.13
#4  0x00007fffee5cf735 in Exiv2::XmpKey::XmpKey(std::string const&) () from
/usr/lib64/libexiv2.so.13
#5  0x00007ffff639d805 in KExiv2Iface::KExiv2::removeXmpTag(char const*, bool)
const () from /usr/lib64/libkexiv2.so.11
#6  0x00007ffff5c88b95 in Digikam::DMetadata::setImageTitles
(this=this at entry=0x7fffbea895d0, titles=...)
    at /usr/src/debug/digikam-4.10.0/core/libs/dmetadata/dmetadata.cpp:607
#7  0x0000000000625a30 in Digikam::MetadataHub::write
(this=this at entry=0x7fffbea89640, metadata=..., 
    writeMode=writeMode at entry=Digikam::MetadataHub::FullWrite, settings=...) at
/usr/src/debug/digikam-4.10.0/core/app/fileaction/metadatahub.cpp:680
#8  0x0000000000627341 in Digikam::MetadataHub::write
(this=this at entry=0x7fffbea89640, filePath=..., 
    writeMode=writeMode at entry=Digikam::MetadataHub::FullWrite, settings=...) at
/usr/src/debug/digikam-4.10.0/core/app/fileaction/metadatahub.cpp:762
#9  0x000000000062f943 in
Digikam::FileActionMngrFileWorker::writeMetadataToFiles (this=<optimized out>,
infos=...)
    at /usr/src/debug/digikam-4.10.0/core/app/fileaction/fileworkeriface.cpp:94

The crash come from Exiv2.
This due because xmp namespace from ACDSee is not know by Exiv2.
Why exiv2 crash here ? There is no reason...
I'm not sure if it's a C++ exception (even  we can see "__cxa_throw ()" in
backtrace).
Because, i'm sure to have patched in far pass libkexiv2 to catch properly Exiv2
exceptions into libkexiv2 (This is one reason why libkexiv2 exist).

The crash is reproducible with Exiv2 CLI tool to try to manipulate ACDSee
namespace as well (or a small test program can be written in this way) ?

Gilles

-- 
You are receiving this mail because:
You are the assignee for the bug.



More information about the Digikam-devel mailing list