Bug 328784

Summary: after adding a pics path, digiKam keeps on crashing at startup
Product: [Applications] digikam Reporter: Axel Krebs <axel.krebs>
Component: DImg-FileIOAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR Keywords: drkonqi
Version: 3.4.0   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 6.2.0

Description Axel Krebs 2013-12-14 07:01:44 UTC
Application: digikam (3.4.0)
KDE Platform Version: 4.11.2
Qt Version: 4.8.4
Operating System: Linux 3.11.0-14-generic x86_64
Distribution: Ubuntu 13.10

-- Information about the crash:
- What I was doing when the application crashed:
- adding ene single(!!) path containg 32 pics in jpg or png-format
- sizes 304 kB to 186 MB (png from RAW)
- when taking away that path, all works fine again
- for trying to find out _one_ single potentially "bad pic", i divede that n3ew test path into two parts with just 16 pics, each.
- chainging one _or_ the other path, results in repeated crashes 
- therefore, I conclude the problem ist _not_ related to one single pic BUT one path management, digiKam databases or smilar.

The crash can be reproduced every time.

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

Thread 5 (Thread 0x7faa8ebdc700 (LWP 2093)):
#0  0x00007faaaa8b0f7d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007faa93a3c198 in ?? () from /lib/x86_64-linux-gnu/libusb-1.0.so.0
#2  0x00007faaa5c09f6e in start_thread (arg=0x7faa8ebdc700) at pthread_create.c:311
#3  0x00007faaaa8bd9cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 4 (Thread 0x7faa88514700 (LWP 2149)):
[KCrash Handler]
#6  0x00007faaac27a9af in read_dib_body (s=..., bi=..., offset=138, startpos=0, image=...) at image/qbmphandler.cpp:322
#7  0x00007faaac27b5b1 in QBmpHandler::read (this=0x7faa8004a460, image=0x7faa88512cf0) at image/qbmphandler.cpp:770
#8  0x00007faaac2545f4 in QImageReader::read (this=this@entry=0x7faa88512d50, image=image@entry=0x7faa88512cf0) at image/qimagereader.cpp:1205
#9  0x00007faaac254b44 in QImageReader::read (this=this@entry=0x7faa88512d50) at image/qimagereader.cpp:1155
#10 0x00007faaac248e4e in QImage::load (this=this@entry=0x7faa88512ea0, fileName=..., format=format@entry=0x0) at image/qimage.cpp:5094
#11 0x00007faaac248f46 in QImage::QImage (this=0x7faa88512ea0, fileName=..., format=0x0) at image/qimage.cpp:995
#12 0x00007faaae36082e in Digikam::QImageLoader::load (this=this@entry=0x7faa885130d0, filePath=..., observer=observer@entry=0x0) at /build/buildd/digikam-3.4.0/core/libs/dimg/loaders/qimageloader.cpp:55
#13 0x00007faaae334d3c in Digikam::DImg::load (this=this@entry=0x7faa800b30c0, filePath=..., loadFlagsInt=loadFlagsInt@entry=1, observer=observer@entry=0x0, rawDecodingSettings=...) at /build/buildd/digikam-3.4.0/core/libs/dimg/dimg.cpp:558
#14 0x00007faaae3353fd in Digikam::DImg::loadImageInfo (this=this@entry=0x7faa800b30c0, filePath=..., loadMetadata=loadMetadata@entry=false, loadICCData=loadICCData@entry=false, loadUniqueHash=loadUniqueHash@entry=false, loadImageHistory=loadImageHistory@entry=false) at /build/buildd/digikam-3.4.0/core/libs/dimg/dimg.cpp:370
#15 0x00007faaadf0e986 in Digikam::ImageScanner::loadFromDisk (this=this@entry=0x7faa88513440) at /build/buildd/digikam-3.4.0/core/libs/database/imagescanner.cpp:1481
#16 0x00007faaadf0ea40 in Digikam::ImageScanner::newFile (this=this@entry=0x7faa88513440, albumId=albumId@entry=1877) at /build/buildd/digikam-3.4.0/core/libs/database/imagescanner.cpp:266
#17 0x00007faaadea78e8 in Digikam::CollectionScanner::scanNewFile (this=this@entry=0x7faa88513ab0, info=..., albumId=1877) at /build/buildd/digikam-3.4.0/core/libs/database/collectionscanner.cpp:1247
#18 0x00007faaadeaaa4f in Digikam::CollectionScanner::scanAlbum (this=this@entry=0x7faa88513ab0, location=..., album=...) at /build/buildd/digikam-3.4.0/core/libs/database/collectionscanner.cpp:1089
#19 0x00007faaadeaa906 in Digikam::CollectionScanner::scanAlbum (this=this@entry=0x7faa88513ab0, location=..., album=...) at /build/buildd/digikam-3.4.0/core/libs/database/collectionscanner.cpp:1112
#20 0x00007faaadeab2a3 in Digikam::CollectionScanner::scanAlbumRoot (this=this@entry=0x7faa88513ab0, location=...) at /build/buildd/digikam-3.4.0/core/libs/database/collectionscanner.cpp:828
#21 0x00007faaadead23d in Digikam::CollectionScanner::partialScan (this=this@entry=0x7faa88513ab0, albumRoot=..., album=...) at /build/buildd/digikam-3.4.0/core/libs/database/collectionscanner.cpp:687
#22 0x00007faaadead73c in Digikam::CollectionScanner::partialScan (this=this@entry=0x7faa88513ab0, filePath=...) at /build/buildd/digikam-3.4.0/core/libs/database/collectionscanner.cpp:617
#23 0x00000000005d5bb9 in Digikam::ScanController::run (this=0x1fc3e70) at /build/buildd/digikam-3.4.0/core/digikam/database/scancontroller.cpp:798
#24 0x00007faaab69ef2f in QThreadPrivate::start (arg=0x1fc3e70) at thread/qthread_unix.cpp:338
#25 0x00007faaa5c09f6e in start_thread (arg=0x7faa88514700) at pthread_create.c:311
#26 0x00007faaaa8bd9cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 3 (Thread 0x7faa87d13700 (LWP 2150)):
#0  0x00007faaaa8b0f7d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007faaa31dc6a4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007faaa31dc7ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007faaab7cba76 in QEventDispatcherGlib::processEvents (this=0x7faa780008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007faaab79d5ef in QEventLoop::processEvents (this=this@entry=0x7faa87d12ab0, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007faaab79d8e5 in QEventLoop::exec (this=this@entry=0x7faa87d12ab0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007faaab69c88f in QThread::exec (this=this@entry=0x1fc7890) at thread/qthread.cpp:542
#7  0x00007faaab77ed13 in QInotifyFileSystemWatcherEngine::run (this=0x1fc7890) at io/qfilesystemwatcher_inotify.cpp:265
#8  0x00007faaab69ef2f in QThreadPrivate::start (arg=0x1fc7890) at thread/qthread_unix.cpp:338
#9  0x00007faaa5c09f6e in start_thread (arg=0x7faa87d13700) at pthread_create.c:311
#10 0x00007faaaa8bd9cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 2 (Thread 0x7faa75861700 (LWP 2276)):
#0  0x00007faaa321c0ea in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007faaa321c3c9 in g_mutex_unlock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007faaa31dc699 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007faaa31dc7ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007faaab7cba76 in QEventDispatcherGlib::processEvents (this=0x7faa700008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007faaab79d5ef in QEventLoop::processEvents (this=this@entry=0x7faa75860ab0, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007faaab79d8e5 in QEventLoop::exec (this=this@entry=0x7faa75860ab0, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007faaab69c88f in QThread::exec (this=this@entry=0x2a01560) at thread/qthread.cpp:542
#8  0x00007faaab77ed13 in QInotifyFileSystemWatcherEngine::run (this=0x2a01560) at io/qfilesystemwatcher_inotify.cpp:265
#9  0x00007faaab69ef2f in QThreadPrivate::start (arg=0x2a01560) at thread/qthread_unix.cpp:338
#10 0x00007faaa5c09f6e in start_thread (arg=0x7faa75861700) at pthread_create.c:311
#11 0x00007faaaa8bd9cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 1 (Thread 0x7faab0e3ba80 (LWP 2054)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007faaab69f406 in wait (time=18446744073709551615, this=0x1fc3fa0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x1fc3f50, mutex=mutex@entry=0x1fc3f28, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007faaab69eafe in QThread::wait (this=this@entry=0x1fc3e70, time=time@entry=18446744073709551615) at thread/qthread_unix.cpp:691
#4  0x00000000005d1239 in Digikam::ScanController::shutDown (this=this@entry=0x1fc3e70) at /build/buildd/digikam-3.4.0/core/digikam/database/scancontroller.cpp:361
#5  0x00000000005d402b in Digikam::ScanController::~ScanController (this=0x1fc3e70, __in_chrg=<optimized out>) at /build/buildd/digikam-3.4.0/core/digikam/database/scancontroller.cpp:337
#6  0x00000000005d41a7 in ~ScanControllerCreator (this=0x1fc3e70, __in_chrg=<optimized out>) at /build/buildd/digikam-3.4.0/core/digikam/database/scancontroller.cpp:277
#7  destroy () at /build/buildd/digikam-3.4.0/core/digikam/database/scancontroller.cpp:284
#8  0x00007faaaa7ff071 in __run_exit_handlers (status=1, listp=0x7faaaab846a8 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:77
#9  0x00007faaaa7ff0f5 in __GI_exit (status=<optimized out>) at exit.c:99
#10 0x00007faaac1f66b8 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:782
#11 0x00007faaace98620 in KApplication::xioErrhandler (this=0x7fff514b3130, dpy=0x1f04610) at ../../kdeui/kernel/kapplication.cpp:419
#12 0x00007faaa8db764e in _XIOError () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#13 0x00007faaa8db503d in _XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#14 0x00007faaa8da712b in XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#15 0x00007faaac2314a7 in x11EventSourcePrepare (s=0x1f071f0, timeout=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:77
#16 0x00007faaa31dbd4d in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007faaa31dc5c3 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007faaa31dc7ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007faaab7cba55 in QEventDispatcherGlib::processEvents (this=0x1e3a7e0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#20 0x00007faaac2319d6 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#21 0x00007faaab79d5ef in QEventLoop::processEvents (this=this@entry=0x7fff514b2c10, flags=...) at kernel/qeventloop.cpp:149
#22 0x00007faaab79d8e5 in QEventLoop::exec (this=this@entry=0x7fff514b2c10, flags=...) at kernel/qeventloop.cpp:204
#23 0x00007faaab7a2e5b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#24 0x00007faaac18e34c in QApplication::exec () at kernel/qapplication.cpp:3828
#25 0x0000000000491ef3 in main (argc=<optimized out>, argv=<optimized out>) at /build/buildd/digikam-3.4.0/core/digikam/main/main.cpp:235

Possible duplicates by query: bug 327714, bug 325609, bug 319762, bug 319655, bug 319605.

Reported using DrKonqi
Comment 1 caulier.gilles 2013-12-14 08:49:09 UTC

*** This bug has been marked as a duplicate of bug 310798 ***
Comment 2 caulier.gilles 2019-07-28 01:56:44 UTC
Fixed with bug #310798