------- 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 Summary: Crash when editing Caption with Digikam4 SVN Product: digikam Version: unspecified Platform: Ubuntu Packages OS/Version: Linux Status: UNCONFIRMED Severity: crash Priority: NOR Component: general AssignedTo: digikam-devel kde org ReportedBy: gsking1 gmail com Version: 0.10.0-beta2 (rev.: 831370) (using KDE 4.0.83) Installed from: Ubuntu Packages Compiler: gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7) OS: Linux Crashed after clicking the edit button while on a jpeg file. Was able to re-create once, but not a third time. A backtrace is attached: Application: digiKam (digikam), signal SIGSEGV [Thread debugging using libthread_db enabled] [New Thread 0xb4b32720 (LWP 5200)] [New Thread 0xa9105b90 (LWP 5252)] [New Thread 0xaab8ab90 (LWP 5250)] [New Thread 0xab38bb90 (LWP 5249)] [New Thread 0xac335b90 (LWP 5218)] [New Thread 0xacbb1b90 (LWP 5217)] [New Thread 0xad45db90 (LWP 5216)] [New Thread 0xadc5eb90 (LWP 5214)] [New Thread 0xae86ab90 (LWP 5211)] [New Thread 0xaf06bb90 (LWP 5210)] [New Thread 0xaf909b90 (LWP 5207)] [New Thread 0xb299ab90 (LWP 5206)] [New Thread 0xb2199b90 (LWP 5205)] [New Thread 0xb3595b90 (LWP 5202)] [KCrash handler] #6 0xb4ea7f9b 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> > >::_M_insert_unique () from /usr/local/lib/libexiv2.so.4 #7 0xb4ea833b 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> > >::_M_insert_unique () from /usr/local/lib/libexiv2.so.4 #8 0xb4ebd867 in XMPMeta::RegisterNamespace () from /usr/local/lib/libexiv2.so.4 #9 0xb4ebe0ee in XMPMeta::Initialize () from /usr/local/lib/libexiv2.so.4 #10 0xb4ee31e5 in WXMPMeta_Initialize_1 () from /usr/local/lib/libexiv2.so.4 #11 0xb4eb41c4 in TXMPMeta<std::string>::Initialize () from /usr/local/lib/libexiv2.so.4 #12 0xb4eacee8 in Exiv2::XmpParser::initialize () from /usr/local/lib/libexiv2.so.4 #13 0xb4eadf2f in Exiv2::XmpParser::registerNs () from /usr/local/lib/libexiv2.so.4 #14 0xb4eabae1 in Exiv2::XmpProperties::registerNs () from /usr/local/lib/libexiv2.so.4 #15 0xb5680de0 in KExiv2Priv (this=0xcb1b378) at /home/gsking/programs/src/digikam4/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2private.cpp:40 #16 0xb567debd in KExiv2 (this=0xbfbd39d0) at /home/gsking/programs/src/digikam4/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2.cpp:39 #17 0xb7c69e87 in DMetadata (this=0xbfbd39d0) at /home/gsking/programs/src/digikam4/graphics/digikam/libs/dmetadata/dmetadata.cpp:55 #18 0xb7d633bc in Digikam::ExifWidget::loadFromURL (this=0xcaffc88, url= 0xbfbd3aa8) at /home/gsking/programs/src/digikam4/graphics/digikam/libs/widgets/metadata/exifwidget.cpp:113 #19 0xb7d8f809 in Digikam::ImagePropertiesMetaDataTab::setCurrentURL ( this=0xcafd378, url= 0xbfbd3aa8) at /home/gsking/programs/src/digikam4/graphics/digikam/libs/imageproperties/imagepropertiesmetadatatab.cpp:149 #20 0xb7d83dd4 in Digikam::ImagePropertiesSideBar::slotNoCurrentItem ( this=0xca7ce30) at /home/gsking/programs/src/digikam4/graphics/digikam/libs/imageproperties/imagepropertiessidebar.cpp:112 #21 0x080bec2a in Digikam::ImagePropertiesSideBarDB::slotNoCurrentItem ( this=0xca7ce30) at /home/gsking/programs/src/digikam4/graphics/digikam/libs/imageproperties/imagepropertiessidebardb.cpp:180 #22 0x080bf89a in Digikam::ImagePropertiesSideBarDB::qt_metacall ( this=0xca7ce30, _c=QMetaObject::InvokeMetaMethod, _id=13, _a=0xbfbd3b88) at /home/gsking/programs/src/digikam4/graphics/build/digikam/digikam/imagepropertiessidebardb.moc:110 #23 0xb672d4f9 in QMetaObject::activate () from /usr/lib/libQtCore.so.4 #24 0xb672dbc2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4 #25 0xb7dddaef in Digikam::EditorWindow::signalNoCurrentItem (this=0x85e1058) at /home/gsking/programs/src/digikam4/graphics/build/digikam/digikam/editorwindow.moc:222 #26 0xb7dddc3a in Digikam::EditorWindow::slotLoadingStarted (this=0x85e1058) at /home/gsking/programs/src/digikam4/graphics/digikam/utilities/imageeditor/editor/editorwindow.cpp:1247 #27 0xb7dde3bb in Digikam::EditorWindow::qt_metacall (this=0x85e1058, _c=QMetaObject::InvokeMetaMethod, _id=17, _a=0xbfbd3d1c) at /home/gsking/programs/src/digikam4/graphics/build/digikam/digikam/editorwindow.moc:170 #28 0x080af914 in Digikam::ImageWindow::qt_metacall (this=0x85e1058, _c=QMetaObject::InvokeMetaMethod, _id=61, _a=0xbfbd3d1c) at /home/gsking/programs/src/digikam4/graphics/build/digikam/digikam/imagewindow.moc:103 #29 0xb672d4f9 in QMetaObject::activate () from /usr/lib/libQtCore.so.4 #30 0xb672dbc2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4 #31 0xb7dc2a6c in Digikam::Canvas::signalLoadingStarted (this=0x85b0ef8, _t1= 0xbfbd3d6c) at /home/gsking/programs/src/digikam4/graphics/build/digikam/digikam/canvas.moc:252 #32 0xb7dc3680 in Digikam::Canvas::load (this=0x85b0ef8, filename= 0xbfbd3d6c, IOFileSettings=0xca67fd0) at /home/gsking/programs/src/digikam4/graphics/digikam/utilities/imageeditor/canvas/canvas.cpp:252 #33 0x080adee4 in Digikam::ImageWindow::slotLoadCurrent (this=0x85e1058) at /home/gsking/programs/src/digikam4/graphics/digikam/utilities/imageeditor/editor/imagewindow.cpp:567 #34 0x080afa5e in Digikam::ImageWindow::qt_metacall (this=0x85e1058, _c=QMetaObject::InvokeMetaMethod, _id=10, _a=0xbfbd3e08) at /home/gsking/programs/src/digikam4/graphics/build/digikam/digikam/imagewindow.moc:118 #35 0xb672d4f9 in QMetaObject::activate () from /usr/lib/libQtCore.so.4 #36 0xb672dbc2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4 #37 0xb6734037 in ?? () from /usr/lib/libQtCore.so.4 #38 0xb673415c in ?? () from /usr/lib/libQtCore.so.4 #39 0xb6728c9a in QObject::event () from /usr/lib/libQtCore.so.4 #40 0xb590fc0c in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4 #41 0xb59147a9 in QApplication::notify () from /usr/lib/libQtGui.so.4 #42 0xb74e1d93 in KApplication::notify (this=0xbfbd45a4, receiver=0xe7cb230, event=0xbfbd42e8) at /build/buildd/kde4libs-4.0.83/kdeui/kernel/kapplication.cpp:311 #43 0xb67186a9 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4 #44 0xb67461a1 in ?? () from /usr/lib/libQtCore.so.4 #45 0xb6743a40 in ?? () from /usr/lib/libQtCore.so.4 #46 0xb5072bf8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #47 0xb5075e5e in ?? () from /usr/lib/libglib-2.0.so.0 #48 0xb50763ac in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #49 0xb6743f98 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4 #50 0xb59a31b5 in ?? () from /usr/lib/libQtGui.so.4 #51 0xb671792d in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4 #52 0xb6717abd in QEventLoop::exec () from /usr/lib/libQtCore.so.4 #53 0xb6719d3d in QCoreApplication::exec () from /usr/lib/libQtCore.so.4 #54 0xb590f567 in QApplication::exec () from /usr/lib/libQtGui.so.4 #55 0x082920bf in main (argc=1, argv=0xbfbd4974) at /home/gsking/programs/src/digikam4/graphics/digikam/digikam/main.cpp:298 #0 0xb7f98410 in __kernel_vsyscall () _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
------- 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 andi.clemens gmx net 2008-07-13 10:11 ------- Do you have the newest exiv2 (0.17.1) and libkexiv2 installed? Especially libkexiv2 has seen recent updates... _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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|general |Metadata ------- Additional Comments From caulier.gilles gmail com 2008-07-13 10:26 ------- Crash appears in Exiv2 thrue libkexiv2 when Microsoft XMP Namespace is registered... We need to know exactly which version of EXiv2 you use. I remember to have seen this crash in pass using EXiv2 0.17. updated Exiv2 to 0.17.1 fix the problem (i hope). I cannot reproduce it with Exiv2 from trunk (future 0.18) Gilles Caulier _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 ---------------------------------------------------------------------------- CC| |ahuggel gmx net ------- Additional Comments From caulier.gilles gmail com 2008-07-13 10:29 ------- Andreas, I CC you just for info. Gilles Caulier _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 andi.clemens gmx net changed: What |Removed |Added ---------------------------------------------------------------------------- Version|unspecified |0.10.0-svn _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-13 16:10 ------- The crash happens in the initialization function of the Adobe XMP toolkit. Just curious: could it be that two threads are calling this at (almost) the same time? (Even if that's the case, I have no idea whether that's a problem. But if it really is, you could easily initialize the XMP SDK somewhere suitable by explicitly calling Exiv2::XmpParser::initialize() ) -ahu. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-13 17:18 ------- Andreas, Yes, it's possible, because we using multithreading in digiKam. Exiv2::XmpParser::initialize() need to be called in libkexiv2 constructor. right ? Gilles _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-13 17:29 ------- I don't know whether the constructor is the right place or a separate initialize() function or some kind of thread-synchronization would be required: "somewhere suitable" just means somewhere where you're sure that only one thread is doing this. (just to highlight again: I really have no idea if this is the problem) -ahu. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 marcel.wiesweg gmx de 2008-07-13 18:03 ------- If there are global data fields somewhere inside the library that need to be initialized once and are then read-only, we should call this from our initialization code. Assuming that the data is only accessed "const" afterwards it should be safe to leave it open for concurrent access (*). If accessing the data involves any kind of change to global variables, and a mutex is not used, this would taint libexiv2 as "not reentrant" and require a mutex for access. I assume this is not the case. (*) With Qt, there is an implication with implicitly shared classes: If there are copies of a QString, with several threads each having an instance copied from the same QString, everything is all right. However the process of creating the copies is not safe: Imagine a globally accessible QString and two threads at the same time copying it with the copy constructor. This is _not_ safe and should lege artis be mutex-protected. It is safe to create instances and send them with cross-thread signals. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 gsking1 gmail com 2008-07-13 19:16 ------- I'm using Exiv2 0.17.1 >We need to know exactly which version of EXiv2 you use. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-14 14:28 ------- Marcel, Exiv2 is only _almost_ thread-safe: The IPTC code is reentrant The Exif code will be reentrant in 0.18 (fix for #439 is in SVN). Current versions still have some hidden unprotected Makernote initialization code done in the constructor of static class variables, which is probably not safe. The XMP code uses the Adobe XMP toolkit (XMP SDK), which according to its documentation is thread-safe. It actually uses mutexes to serialize critical sections. However, I just saw that the XMP SDK initialization function is not mutex protected, so I believe that it is not thread-safe. In addition, Exiv2::XmpProperties::registerNs is also not thread-safe. So at least for the time being, applications need to ensure that these two XMP functions are serialized. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 ---------------------------------------------------------------------------- CC| |kde-2 dotancohen com ------- Additional Comments From caulier.gilles gmail com 2008-07-14 20:01 ------- *** Bug 166557 has been marked as a duplicate of this bug. *** _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-19 10:01 ------- Created an attachment (id=26252) --> (http://bugs.kde.org/attachment.cgi?id=26252&action=view) libkexiv2 for KDE3 patch to force to initialize XMP parser in private class constructor _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-19 10:05 ------- Created an attachment (id=26253) --> (http://bugs.kde.org/attachment.cgi?id=26253&action=view) libkexiv2 for KDE4 patch to force to initialize XMP parser in private class constructor Andi, Arnd, Marcel, See attached 2 patches to force XMP initialization when libkexiv2 private internal class is created. This will not solve the problem but it will set when the XMP parser must be initialized. In old code, this is not set explicitly, and it's done in Exiv2 when XMPParser class is used. With these patches we control fine when and where initialization must be done. Gilles Caulier _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-27 13:21 ------- SVN commit 838242 by cgilles: force to initialize XMP parser in private class constructor CCBUGS: 166424 M +3 -0 kexiv2private.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=838242 _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 ---------------------------------------------------------------------------- Attachment #26253|0 |1 is obsolete| | _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-27 13:24 ------- (From update of attachment 26252) This one must not be applied to svn for the moment. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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-27 13:27 ------- Geoff, Please, make for me 2 test : - checkout libkexiv2 from trunk and compile it again used Exiv2 0.17.1, and check if crash still here. - If it always crash, checkout Exiv2 from trunk (next 0.18.0 version). Cleanup libkexiv2 and recompile it using this Exiv2 version. Check if problem still here. Thanks in advance Gilles Caulier _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 ---------------------------------------------------------------------------- Attachment #26252|0 |1 is obsolete| | _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
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 gsking1 gmail com 2008-07-28 04:04 ------- I tried your test and it seems okay using Exiv2 0.17.1 I'll continue to test. Thanks. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
Free forum by Nabble | Edit this page |