Bug 364880 - digiKam crashes when rotating a picture
Summary: digiKam crashes when rotating a picture
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Metadata-Orientation (show other bugs)
Version: 4.14.0
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2016-06-28 23:19 UTC by martin.strecker
Modified: 2021-04-07 21:39 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 7.3.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description martin.strecker 2016-06-28 23:19:35 UTC
Application: digikam (4.14.0)
KDE Platform Version: 4.14.18
Qt Version: 4.8.6
Operating System: Linux 4.1.26-21-default x86_64
Distribution: "openSUSE Leap 42.1 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed: I have tried to rotate the picture in the full screen view mode (right click - rotate picture left)

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f7c60b9d840 (LWP 4961))]

Thread 6 (Thread 0x7f7c44b13700 (LWP 4965)):
#0  0x00007f7c595aaf5d in recvmsg () at /lib64/libc.so.6
#1  0x00007f7c52cf2ff9 in udev_monitor_receive_device () at /usr/lib64/libudev.so.1
#2  0x00007f7c4565990b in  () at /usr/lib64/libusb-1.0.so.0
#3  0x00007f7c57e1e0a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f7c595a9fed in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f7c3d99f700 (LWP 4966)):
#0  0x00007f7c57e2203f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7c5a1070a6 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00000000005e460e in  ()
#3  0x00007f7c5a106bbf in  () at /usr/lib64/libQtCore.so.4
#4  0x00007f7c57e1e0a4 in start_thread () at /lib64/libpthread.so.0
#5  0x00007f7c595a9fed in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f7c3d19e700 (LWP 4967)):
#0  0x00007f7c51ac7440 in g_main_context_prepare () at /usr/lib64/libglib-2.0.so.0
#1  0x00007f7c51ac7d80 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f7c51ac7f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f7c5a234fde in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007f7c5a206d4f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007f7c5a207045 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007f7c5a1044df in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007f7c5a1e8653 in  () at /usr/lib64/libQtCore.so.4
#8  0x00007f7c5a106bbf in  () at /usr/lib64/libQtCore.so.4
#9  0x00007f7c57e1e0a4 in start_thread () at /lib64/libpthread.so.0
#10 0x00007f7c595a9fed in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f7c3c99d700 (LWP 4969)):
#0  0x00007f7c57e2203f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7c5a1070a6 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00007f7c5f2f1c3a in  () at /usr/lib64/libdigikamcore.so.4.14.0
#3  0x00007f7c5a106bbf in  () at /usr/lib64/libQtCore.so.4
#4  0x00007f7c57e1e0a4 in start_thread () at /lib64/libpthread.so.0
#5  0x00007f7c595a9fed in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f7c1fd76700 (LWP 4983)):
[KCrash Handler]
#6  0x00007f7c55e5dadb in Exiv2::Internal::TiffComponent::addPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#7  0x00007f7c55e5f99b in Exiv2::Internal::TiffMnEntry::doAddPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#8  0x00007f7c55e5daf5 in Exiv2::Internal::TiffComponent::addPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#9  0x00007f7c55e5f18a in Exiv2::Internal::TiffDirectory::doAddPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#10 0x00007f7c55e5daf5 in Exiv2::Internal::TiffComponent::addPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#11 0x00007f7c55e5f6e4 in Exiv2::Internal::TiffSubIfd::doAddPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#12 0x00007f7c55e5daf5 in Exiv2::Internal::TiffComponent::addPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#13 0x00007f7c55e5f18a in Exiv2::Internal::TiffDirectory::doAddPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#14 0x00007f7c55e5daf5 in Exiv2::Internal::TiffComponent::addPath(unsigned short, std::stack<Exiv2::Internal::TiffPathItem, std::deque<Exiv2::Internal::TiffPathItem, std::allocator<Exiv2::Internal::TiffPathItem> > >&, Exiv2::Internal::TiffComponent*, std::auto_ptr<Exiv2::Internal::TiffComponent>) () at /usr/lib64/libexiv2.so.14
#15 0x00007f7c55e7ba82 in Exiv2::Internal::TiffEncoder::add(Exiv2::Internal::TiffComponent*, Exiv2::Internal::TiffComponent*, unsigned int) () at /usr/lib64/libexiv2.so.14
#16 0x00007f7c55e699f1 in Exiv2::Internal::TiffParserWorker::encode(Exiv2::BasicIo&, unsigned char const*, unsigned int, Exiv2::ExifData const&, Exiv2::IptcData const&, Exiv2::XmpData const&, unsigned int, void (Exiv2::Internal::TiffEncoder::*(*)(std::string const&, unsigned int, Exiv2::Internal::IfdId))(Exiv2::Internal::TiffEntryBase*, Exiv2::Exifdatum const*), Exiv2::Internal::TiffHeaderBase*, Exiv2::Internal::OffsetWriter*) () at /usr/lib64/libexiv2.so.14
#17 0x00007f7c55e0124e in Exiv2::ExifParser::encode(std::vector<unsigned char, std::allocator<unsigned char> >&, unsigned char const*, unsigned int, Exiv2::ByteOrder, Exiv2::ExifData const&) () at /usr/lib64/libexiv2.so.14
#18 0x00007f7c55e1b3e9 in Exiv2::JpegBase::doWriteMetadata(Exiv2::BasicIo&) () at /usr/lib64/libexiv2.so.14
#19 0x00007f7c55e1cb95 in Exiv2::JpegBase::writeMetadata() () at /usr/lib64/libexiv2.so.14
#20 0x00007f7c5eb1d2b6 in KExiv2Iface::KExiv2::Private::saveOperations(QFileInfo const&, std::auto_ptr<Exiv2::Image>) const () at /usr/lib64/libkexiv2.so.11
#21 0x00007f7c5eb1f6ad in KExiv2Iface::KExiv2::Private::saveToFile(QFileInfo const&) const () at /usr/lib64/libkexiv2.so.11
#22 0x00007f7c5eb1b27a in KExiv2Iface::KExiv2::save(QString const&) const () at /usr/lib64/libkexiv2.so.11
#23 0x00007f7c5f27d416 in Digikam::DMetadata::save(QString const&) const () at /usr/lib64/libdigikamcore.so.4.14.0
#24 0x00007f7c5f29a5a3 in Digikam::JPEGUtils::JpegRotator::updateMetadata(QString const&, KExiv2Iface::RotationMatrix const&) () at /usr/lib64/libdigikamcore.so.4.14.0
#25 0x00007f7c5f29cc0a in Digikam::JPEGUtils::JpegRotator::exifTransform(KExiv2Iface::RotationMatrix const&) () at /usr/lib64/libdigikamcore.so.4.14.0
#26 0x00007f7c5f29dcd7 in Digikam::JPEGUtils::JpegRotator::exifTransform(KExiv2Iface::RotationMatrix::TransformationAction) () at /usr/lib64/libdigikamcore.so.4.14.0
#27 0x00000000006320bb in  ()
#28 0x000000000063065c in  ()
#29 0x00007f7c5a22049e in QObject::event(QEvent*) () at /usr/lib64/libQtCore.so.4
#30 0x00007f7c5ac1279c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#31 0x00007f7c5ac18cdd in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#32 0x00007f7c5b929e9a in KApplication::notify(QObject*, QEvent*) () at /usr/lib64/libkdeui.so.5
#33 0x00007f7c5a20818d in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQtCore.so.4
#34 0x00007f7c5a20b45d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQtCore.so.4
#35 0x00007f7c5a2357fe in  () at /usr/lib64/libQtCore.so.4
#36 0x00007f7c51ac7c84 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#37 0x00007f7c51ac7ed8 in  () at /usr/lib64/libglib-2.0.so.0
#38 0x00007f7c51ac7f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#39 0x00007f7c5a234fbe in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#40 0x00007f7c5a206d4f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#41 0x00007f7c5a207045 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#42 0x00007f7c5f2f1303 in  () at /usr/lib64/libdigikamcore.so.4.14.0
#43 0x00007f7c5a0faace in  () at /usr/lib64/libQtCore.so.4
#44 0x00007f7c5a106bbf in  () at /usr/lib64/libQtCore.so.4
#45 0x00007f7c57e1e0a4 in start_thread () at /lib64/libpthread.so.0
#46 0x00007f7c595a9fed in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f7c60b9d840 (LWP 4961)):
#0  0x00007f7c57e2203f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f7c5a1070a6 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00007f7c5f2f1f04 in Digikam::WorkerObject::wait() () at /usr/lib64/libdigikamcore.so.4.14.0
#3  0x00007f7c5f2f40ec in Digikam::ParallelWorkers::wait() () at /usr/lib64/libdigikamcore.so.4.14.0
#4  0x000000000062a485 in  ()
#5  0x000000000062a4e7 in  ()
#6  0x00007f7c594fcb19 in __run_exit_handlers () at /lib64/libc.so.6
#7  0x00007f7c594fcb65 in  () at /lib64/libc.so.6
#8  0x00007f7c5ac79028 in  () at /usr/lib64/libQtGui.so.4
#9  0x00007f7c5b928a50 in KApplication::xioErrhandler(_XDisplay*) () at /usr/lib64/libkdeui.so.5
#10 0x00007f7c56b4437e in _XIOError () at /usr/lib64/libX11.so.6
#11 0x00007f7c56b41d3d in _XEventsQueued () at /usr/lib64/libX11.so.6
#12 0x00007f7c56b33dcb in XEventsQueued () at /usr/lib64/libX11.so.6
#13 0x00007f7c5acaf11c in  () at /usr/lib64/libQtGui.so.4
#14 0x00007f7c51ac78f1 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#15 0x00007f7c51ac7df8 in  () at /usr/lib64/libglib-2.0.so.0
#16 0x00007f7c51ac7f7c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#17 0x00007f7c5a234fbe in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#18 0x00007f7c5acaf6a6 in  () at /usr/lib64/libQtGui.so.4
#19 0x00007f7c5a206d4f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#20 0x00007f7c5a207045 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#21 0x00007f7c5a20c499 in QCoreApplication::exec() () at /usr/lib64/libQtCore.so.4
#22 0x00000000004a1486 in  ()
#23 0x00007f7c594e6b05 in __libc_start_main () at /lib64/libc.so.6
#24 0x00000000004a3d2f in _start ()

Possible duplicates by query: bug 357340, bug 351638, bug 350367.

Reported using DrKonqi
Comment 1 caulier.gilles 2016-06-29 05:15:53 UTC
It crash in Exiv2 tiff parser.

Report this problem in Exiv2 bugzilla.

http://dev.exiv2.org/projects/exiv2/issues

Gilles Caulier
Comment 2 caulier.gilles 2021-04-07 21:39:56 UTC
Not reproducible using digiKam 7.3.0 + Exiv2 0.27.3