Bug 386891 - Crashed while adding pictures
Summary: Crashed while adding pictures
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Unclassified
Component: Metadata-Video (show other bugs)
Version: 4.14.0
Platform: Mint (Ubuntu based) Linux
: NOR crash (vote)
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2017-11-14 05:56 UTC by Ryk van Donselaar
Modified: 2018-02-28 12:37 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 6.0.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ryk van Donselaar 2017-11-14 05:56:35 UTC
Application: digikam (4.14.0)
KDE Platform Version: 4.14.16
Qt Version: 4.8.7
Operating System: Linux 4.10.0-38-generic x86_64
Distribution: Linux Mint 18.2 Sonya

-- Information about the crash:
- What I was doing when the application crashed: I was importing pictures for the first time after a brand new install. tried several times but at about 46% it crashes every time. Linux Mint 18.2 64 bit.

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
[Current thread is 1 (Thread 0x7f440de9fb80 (LWP 11738))]

Thread 3 (Thread 0x7f43d88fb700 (LWP 11748)):
#0  0x00007f44068df70d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f43fea2838c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f43fea2849c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f44075842ce in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f440755218f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f44075524f5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f4407441549 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f4407532223 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f4407443e3c in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f440335e6ba in start_thread (arg=0x7f43d88fb700) at pthread_create.c:333
#10 0x00007f44068eb3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f43d90fc700 (LWP 11747)):
[KCrash Handler]
#6  0x00007f4406819428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#7  0x00007f440681b02a in __GI_abort () at abort.c:89
#8  0x00007f440685b7ea in __libc_message (do_abort=do_abort@entry=2, fmt=fmt@entry=0x7f4406974e98 "*** Error in `%s': %s: 0x%s ***\n") at ../sysdeps/posix/libc_fatal.c:175
#9  0x00007f440686437a in malloc_printerr (ar_ptr=<optimized out>, ptr=<optimized out>, str=0x7f4406974f10 "free(): invalid next size (fast)", action=3) at malloc.c:5006
#10 _int_free (av=<optimized out>, p=<optimized out>, have_lock=0) at malloc.c:3867
#11 0x00007f440686853c in __GI___libc_free (mem=<optimized out>) at malloc.c:2968
#12 0x00007f440604f4e1 in Exiv2::RiffVideo::nikonTagsHandler() () from /usr/lib/x86_64-linux-gnu/libexiv2.so.14
#13 0x00007f4406052c75 in Exiv2::RiffVideo::decodeBlock() () from /usr/lib/x86_64-linux-gnu/libexiv2.so.14
#14 0x00007f4406052898 in Exiv2::RiffVideo::tagDecoder(Exiv2::DataBuf&, unsigned long) () from /usr/lib/x86_64-linux-gnu/libexiv2.so.14
#15 0x00007f4406052c75 in Exiv2::RiffVideo::decodeBlock() () from /usr/lib/x86_64-linux-gnu/libexiv2.so.14
#16 0x00007f44060530a8 in Exiv2::RiffVideo::readMetadata() () from /usr/lib/x86_64-linux-gnu/libexiv2.so.14
#17 0x00007f440d679605 in KExiv2Iface::KExiv2::load(QString const&) const () from /usr/lib/libkexiv2.so.11
#18 0x00007f440b9ef616 in Digikam::DMetadata::load(QString const&) const () from /usr/lib/digikam/libdigikamcore.so.4.14.0
#19 0x00007f440bfa07a7 in Digikam::ImageScanner::loadFromDisk() () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#20 0x00007f440bfa09e0 in Digikam::ImageScanner::newFile(int) () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#21 0x00007f440bf30f2b in Digikam::CollectionScanner::scanNewFile(QFileInfo const&, int) () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#22 0x00007f440bf35997 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#23 0x00007f440bf35886 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#24 0x00007f440bf35886 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#25 0x00007f440bf35886 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#26 0x00007f440bf36443 in Digikam::CollectionScanner::scanAlbumRoot(Digikam::CollectionLocation const&) () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#27 0x00007f440bf374eb in Digikam::CollectionScanner::completeScan() () from /usr/lib/digikam/libdigikamdatabase.so.4.14.0
#28 0x0000000000604317 in ?? ()
#29 0x00007f4407443e3c in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#30 0x00007f440335e6ba in start_thread (arg=0x7f43d90fc700) at pthread_create.c:333
#31 0x00007f44068eb3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f440de9fb80 (LWP 11738)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f44074443a6 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f44074439ce in QThread::wait(unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x0000000000601e5b in ?? ()
#4  0x0000000000602027 in ?? ()
#5  0x00007f440681dff8 in __run_exit_handlers (status=1, listp=0x7f4406ba85f8 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:82
#6  0x00007f440681e045 in __GI_exit (status=<optimized out>) at exit.c:104
#7  0x00007f43f379bee1 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#8  0x00007f4408cc7fb0 in KApplication::xioErrhandler(_XDisplay*) () from /usr/lib/libkdeui.so.5
#9  0x00007f4402466cee in _XIOError () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#10 0x00007f440246457d in _XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#11 0x00007f4402455ee9 in XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#12 0x00007f440801105c in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#13 0x00007f43fea27dc1 in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#14 0x00007f43fea28330 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#15 0x00007f43fea2849c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#16 0x00007f44075842ae in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#17 0x00007f4408011616 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#18 0x00007f440755218f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#19 0x00007f44075524f5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#20 0x00000000005ffa01 in ?? ()
#21 0x0000000000532f6a in ?? ()
#22 0x00007f440756ddb1 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007f4407f63fdc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#24 0x00007f4407f6af16 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007f4408cc964a in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#26 0x00007f440755390d in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#27 0x00007f44075573c6 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#28 0x00007f440758413e in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#29 0x00007f43fea28197 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007f43fea283f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007f43fea2849c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f44075842ae in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#33 0x00007f4408011616 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#34 0x00007f440755218f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#35 0x00007f44075524f5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#36 0x00007f44075584b9 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#37 0x000000000049649e in ?? ()
#38 0x00007f4406804830 in __libc_start_main (main=0x495210, argc=5, argv=0x7ffc8e5e9438, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc8e5e9428) at ../csu/libc-start.c:291
#39 0x00000000004994a9 in _start ()

Possible duplicates by query: bug 386098, bug 381268, bug 375933.

Reported using DrKonqi
Comment 1 caulier.gilles 2017-11-14 08:10:51 UTC

*** This bug has been marked as a duplicate of bug 340373 ***
Comment 2 caulier.gilles 2018-02-28 12:37:53 UTC
With 6.0.0, we have now a FFMpeg low level metadata parser based on libav C API
for video files database registration.

The Exiv2 video support is not used anymore as this code is buggous and nobody
sound motivated in Exiv2 to finalize the code.

The original post for this file must be fixed now and video metadata support
with ffmpeg must be enough to populate database entries.

Gilles Caulier