[Bug 166424] New: Crash when editing Caption with Digikam4 SVN

classic Classic list List threaded Threaded
48 messages Options
123
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Gilles Caulier-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         




------- Additional Comments From caulier.gilles gmail com  2008-07-30 15:58 -------
Andreas,

>- why is there still a call to Exiv2::XmpProperties::registerNs()? I thought >it's no longer needed as Exiv2 now knows the ns.

In digiKam, thrue libkexiv2, digiKam register "digiKam" XMP namespace in case to use Exiv2 < 0.18. I have removed the registration now.

>- Does digiKam call XmpParser::initialize() from its initialization section now? >Assuming we really have a re-entrancy issue with this function, it must be called >where it is guaranteed that only one thread calls it.

No. digiKam do not call direclty Exiv2 API. in libkexiv2, the only possible call is in private internal container, but this code is disable in my case.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Gilles Caulier-4
In reply to this post by Geoff King-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         




------- Additional Comments From caulier.gilles gmail com  2008-07-30 16:00 -------
SVN commit 839657 by cgilles:

remove hardcoded digiKam XMP namespace registration. This one is now included into Exiv2 0.18
CCBUGS: 166424


 M  +0 -10     dmetadata.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=839657
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Gilles Caulier-4
In reply to this post by Geoff King-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         




------- Additional Comments From caulier.gilles gmail com  2008-07-30 16:02 -------
SVN commit 839658 by cgilles:

Do not register M$ XMP namespace and do not initialize XMP parser (code is non-reentrant from Adibe XMP SDK
CCBUGS: 166424


 M  +0 -14     kexiv2private.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=839658
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Gilles Caulier-4
In reply to this post by Geoff King-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         




------- Additional Comments From caulier.gilles gmail com  2008-07-30 16:11 -------
Andreas,

I have cleaned libkexiv2 source code and digiKam DMetadata code about no re-entrancy Exiv2 calls. Crash still here at the same place into libkexiv2:

gdb /opt/kde4/bin/digikam --interpreter=mi2 -quiet
Using host libthread_db library "/lib/i686/libthread_db.so.1".
Exited normally(gdb) quitgdb /opt/kde4/bin/digikam --interpreter=mi2 -quiet
Using host libthread_db library "/lib/i686/libthread_db.so.1".
Quit
(gdb) quitquit
The program is running.  Exit anyway? (y or n) [answered Y; input not from terminal]
(gdb) Process exited
gdb /opt/kde4/bin/digikam --interpreter=mi2 -quiet
Using host libthread_db library "/lib/i686/libthread_db.so.1".
Exited normally(gdb) bt
bt
#0  0xb50d2f0b in std::_Rb_tree<std::string, std::pair<std::string const, std::string>, std::_Select1st<std::pair<std::string const, std::string> >, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >::find () from /usr/lib/libexiv2.so.4
#1  0xb50ced60 in XMPMeta::GetNamespacePrefix () from /usr/lib/libexiv2.so.4
#2  0xb50eb8c5 in FindSchemaNode () from /usr/lib/libexiv2.so.4
#3  0xb50f18d2 in AddChildNode () from /usr/lib/libexiv2.so.4
#4  0xb50f2308 in RDF_PropertyElementList () from /usr/lib/libexiv2.so.4
#5  0xb50f2b17 in RDF_NodeElement () from /usr/lib/libexiv2.so.4
#6  0xb50f2cbd in ProcessRDF () from /usr/lib/libexiv2.so.4
#7  0xb50d9bfa in XMPMeta::ParseFromBuffer () from /usr/lib/libexiv2.so.4
#8  0xb50f759a in WXMPMeta_ParseFromBuffer_1 () from /usr/lib/libexiv2.so.4
#9  0xb50c8243 in TXMPMeta<std::string>::ParseFromBuffer () from /usr/lib/libexiv2.so.4
#10 0xb50c82de in TXMPMeta<std::string>::TXMPMeta () from /usr/lib/libexiv2.so.4
#11 0xb50c1816 in Exiv2::XmpParser::decode () from /usr/lib/libexiv2.so.4
#12 0xb50651d8 in Exiv2::JpegBase::readMetadata () from /usr/lib/libexiv2.so.4
#13 0xb5c04e64 in KExiv2Iface::KExiv2::load (this=0xaacfe95c, filePath= 0xd3d7464) at /home/gilles/Documents/data/devel/SVN/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2.cpp:185
#14 0xb6a4ca5a in Digikam::DMetadata::load (this=0xaacfe95c, filePath= 0xd3d7464) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/dmetadata/dmetadata.cpp:74
#15 0xb6a23ed5 in Digikam::DImgLoader::readMetadata (this=0xaacfef5c, filePath= 0xd3d7464) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/dimg/loaders/dimgloader.cpp:150
#16 0xb6a28bcd in Digikam::JPEGLoader::load (this=0xaacfef5c, filePath= 0xd3d7464, observer=0xd3d7460) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/dimg/loaders/jpegloader.cpp:104
#17 0xb6a12947 in Digikam::DImg::load (this=0xaacff2b4, filePath= 0xd3d7464, loadFlagsInt=31, observer=0xd3d7460, rawDecodingSettings= 0xaacff050) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/dimg/dimg.cpp:345
#18 0xb6a1368f in Digikam::DImg::load (this=0xaacff2b4, filePath= 0xd3d7464, observer=0xd3d7460, rawDecodingSettings= 0xaacff0d0) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/dimg/dimg.cpp:320
#19 0xb6a13f2c in DImg (this=0xaacff2b4, filePath= 0xd3d7464, observer=0xd3d7460, rawDecodingSettings= 0xaacff2b8) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/dimg/dimg.cpp:89
#20 0xb6accd82 in Digikam::SharedLoadingTask::execute (this=0xd3d7458) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/threadimageio/loadsavetask.cpp:170
#21 0xb6ac0d52 in Digikam::LoadSaveThread::run (this=0xa2f06d8) at /mnt/data/devel/SVN/trunk/graphics/digikam/libs/threadimageio/loadsavethread.cpp:127
#22 0xb7dacae9 in QAbstractItemModel::sort () from /usr/lib/qt4/lib/libQtCore.so.4
#23 0xb7d3f4e2 in start_thread () from /lib/i686/libpthread.so.0
#24 0xb53fe47e in clone () from /lib/i686/libc.so.6
^done

Gilles
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Bugzilla from ahuggel@gmx.net
In reply to this post by Geoff King-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         




------- Additional Comments From ahuggel gmx net  2008-07-30 16:20 -------
Gilles,

if there is no explicit call to Exiv2::XmpParser::initialize() then it will be called the first time the XmpParser is used. And that is potentially by multiple threads at the same time.

Suggestion:
- Introduce a initialize() function in libkexiv2, just a wrapper to  Exiv2::XmpParser::initialize()
- Call it from digikam's initialization section

Andreas
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Gilles Caulier-4
In reply to this post by Geoff King-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         
caulier.gilles gmail com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|Metadata                    |libkexiv2
            Product|digikam                     |kipiplugins
            Version|0.10.0-svn                  |0.2.0-svn
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Gilles Caulier-4
In reply to this post by Geoff King-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         




------- Additional Comments From caulier.gilles gmail com  2008-07-30 16:31 -------
SVN commit 839676 by cgilles:

add new method initializeExiv2() to set on Adobe XMP SDK from Exiv2
CCBUGS: 166424


 M  +9 -0      kexiv2.cpp  
 M  +7 -0      kexiv2.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=839676
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 166424] Crash when editing Caption with Digikam4 SVN

Gilles Caulier-4
In reply to this post by Geoff King-4
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166424         
caulier.gilles gmail com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|digikam-devel kde org       |kde-imaging kde org
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
123