Bug 397722 - Gwenview Crashes in Exiv2::ExifData::findKey()
Summary: Gwenview Crashes in Exiv2::ExifData::findKey()
Status: RESOLVED DUPLICATE of bug 382842
Alias: None
Product: gwenview
Classification: Applications
Component: general (show other bugs)
Version: 18.08.0
Platform: Other Linux
: NOR normal (vote)
Target Milestone: ---
Assignee: Gwenview Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-08-21 20:58 UTC by Paweł Krzak
Modified: 2018-08-22 22:01 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
strace.log (84.12 KB, application/gzip)
2018-08-21 20:58 UTC, Paweł Krzak
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Paweł Krzak 2018-08-21 20:58:07 UTC
Created attachment 114535 [details]
strace.log

distribution: KDE NEON LTS 5.12.6
KDE: 5.49
QT: 5.11
KDE apps: 18.08

Hi!
I would like to report issue relate with gwenview and segmentation fault. I may reproduce this bug any time. I just try to open image in jpg extension ; gwenview is closing immediately with information segmentation fault. Strace in the attachment.

strace -o /tmp/strace.log gwenview IMGP3876.JPG
Comment 1 Nate Graham 2018-08-22 16:46:54 UTC
Could you please additionally attach a symbolicated backtrace? See https://community.kde.org/Get_Involved/Bug_Reporting#Crash_reports_must_include_backtraces
Comment 2 Paweł Krzak 2018-08-22 17:20:51 UTC
Thank you, very usefull manual.


pkrzak@andalusia:/tmp$ gdb gwenview
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from gwenview...(no debugging symbols found)...done.
(gdb) gwenview
Undefined command: "gwenview".  Try "help".
(gdb) run
Starting program: /usr/bin/gwenview 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffdc167700 (LWP 21585)]
[New Thread 0x7fffd958b700 (LWP 21587)]
[New Thread 0x7fffcb3ba700 (LWP 21588)]

Thread 1 "gwenview" received signal SIGSEGV, Segmentation fault.
0x00007ffff152d81e in Exiv2::ExifData::findKey(Exiv2::ExifKey const&) const () from /usr/lib/x86_64-linux-gnu/libexiv2.so.26
(gdb) thread apply all backtrace

Thread 4 (Thread 0x7fffcb3ba700 (LWP 21588)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007ffff358055f in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007ffff3575e8a in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007ffff357f727 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007fffed4ea6ba in start_thread (arg=0x7fffcb3ba700) at pthread_create.c:333
#5  0x00007ffff2e8c41d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fffd958b700 (LWP 21587)):
#0  0x00007ffff2e8074d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffebd0c38c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffebd0c49c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff379809f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ffff373f5ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007ffff35745e4 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007ffff2b0af35 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007ffff357f727 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007fffed4ea6ba in start_thread (arg=0x7fffd958b700) at pthread_create.c:333
#9  0x00007ffff2e8c41d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fffdc167700 (LWP 21585)):
#0  0x00007ffff2e8074d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffeb85dc62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007fffeb85f8d7 in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007fffdeb7c489 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007ffff357f727 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007fffed4ea6ba in start_thread (arg=0x7fffdc167700) at pthread_create.c:333
#6  0x00007ffff2e8c41d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ffff7eef980 (LWP 21580)):
#0  0x00007ffff152d81e in Exiv2::ExifData::findKey(Exiv2::ExifKey const&) const () from /usr/lib/x86_64-linux-gnu/libexiv2.so.26
#1  0x00007ffff1572a14 in Exiv2::Internal::PentaxMakerNote::printShutterCount(std::ostream&, Exiv2::Value const&, Exiv2::ExifData const*) () from /usr/lib/x86_64-linux-gnu/libexiv2.so.26
#2  0x00007ffff152bfdb in Exiv2::Exifdatum::write(std::ostream&, Exiv2::ExifData const*) const () from /usr/lib/x86_64-linux-gnu/libexiv2.so.26
#3  0x00007ffff740c306 in ?? () from /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.5
#4  0x00007ffff7406ec3 in Gwenview::ImageMetaInfoModel::setExiv2Image(Exiv2::Image const*) () from /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.5
#5  0x00007ffff73c21c4 in Gwenview::Document::setExiv2Image(std::auto_ptr<Exiv2::Image>) () from /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.5
#6  0x00007ffff73c1251 in ?? () from /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.5
#7  0x00007ffff73ce7ca in ?? () from /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.5
#8  0x00007ffff376df79 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007ffff357ca71 in QFutureWatcherBase::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007ffff4ef739c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#11 0x00007ffff4efeab0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#12 0x00007ffff3741228 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007ffff3743e2e in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x00007ffff3798a93 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007fffebd0c197 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007fffebd0c3f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007fffebd0c49c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007ffff379809f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00007fffdec059a1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#20 0x00007ffff373f5ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#21 0x00007ffff37486c4 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x0000000000433ed9 in ?? ()
#23 0x00007ffff2da5830 in __libc_start_main (main=0x433770, argc=1, argv=0x7fffffffdfd8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdfc8) at ../csu/libc-start.c:291
#24 0x0000000000434469 in _start ()
Comment 3 Nate Graham 2018-08-22 17:24:30 UTC
Thanks! Looks like it's in Exiv2::ExifData::findKey()

Do you have a camera plugged in at the time when you experience the crash?
Comment 4 Paweł Krzak 2018-08-22 17:48:09 UTC
I have camera in my laptop, but I don't use it at all. I have closed my laptop cover. To be more precise, some part of my images I may open in gwenview correctly so it's not a global problem. 
Images which I try to open there are a typical jpg files with size ~2-5MB
Comment 5 null 2018-08-22 22:01:45 UTC
The crash happens in Exiv2, and most likely is already fixed upstream (http://dev.exiv2.org/issues/0001283 looks like it). Try upgrading once Neon switches its base to Ubuntu 18.04.

*** This bug has been marked as a duplicate of bug 382842 ***