[Digikam-devel] memory leak by Mr Valgrind

Gilles Caulier caulier.gilles at gmail.com
Tue Mar 13 22:47:45 GMT 2012


Marcel,

This time, it's under face detection process. I run few few seconds,
some image are parsed. I press cancel in progress manager, and digiKam
crash in thread management classes :

digikam(11291)/digikam (core) Digikam::DMetadata::getIccProfile: Exif
color-space tag is sRGB. Using default sRGB ICC profile.
digikam(11291)/digikam (core) Digikam::DetectionWorker::process: Found
0 faces in "DSC00012.ARW" QSize(1080, 1616) QSize(2858, 4288)
digikam(11291)/digikam (core) Digikam::DetectionWorker::process: Found
0 faces in "DSC00013.ARW" QSize(1080, 1616) QSize(2858, 4288)
digikam(11291)/digikam (core) Digikam::DMetadata::getIccProfile: Exif
color-space tag is sRGB. Using default sRGB ICC profile.
digikam(11291)/digikam (core) Digikam::DetectionWorker::process: Found
1 faces in "DSC00014.ARW" QSize(1616, 1080) QSize(4288, 2858)
digikam(11291)/digikam (core) Digikam::DetectionWorker::process: Found
0 faces in "DSC00015.ARW" QSize(1616, 1080) QSize(4288, 2858)
digikam(11291)/digikam (core)
Digikam::FacePipeline::FacePipelinePriv::checkFinished: Check for
finish:  51 packages, 0 infos to filter, hasFinished() false
==11291== Thread 4:
==11291== Invalid read of size 8
==11291==    at 0xC7D68A0: QObject::moveToThread(QThread*) (in
/usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0x7CBA95B: Digikam::ParkingThread::run() (threadmanager.cpp:130)
==11291==    by 0xC6DA1E4: ??? (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xCB00D24: start_thread (in /lib64/libpthread-2.12.1.so)
==11291==    by 0xDAF423C: clone (in /lib64/libc-2.12.1.so)
==11291==  Address 0x3c110f68 is 8 bytes inside a block of size 40 free'd
==11291==    at 0x4C244CE: operator delete(void*) (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==11291==    by 0x6BF721: Digikam::DatabaseWriter::~DatabaseWriter()
(facepipeline_p.h:245)
==11291==    by 0x6BD5EB: Digikam::FacePipeline::~FacePipeline()
(facepipeline.cpp:1144)
==11291==    by 0x51DD06:
Digikam::FaceDetector::FaceDetectorPriv::~FaceDetectorPriv() (in
/usr/bin/digikam)
==11291==    by 0x51C9E4: Digikam::FaceDetector::~FaceDetector()
(facedetector.cpp:225)
==11291==    by 0x51CA53: Digikam::FaceDetector::~FaceDetector()
(facedetector.cpp:226)
==11291==    by 0xC7D88E7: QObject::event(QEvent*) (in
/usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xB44C793:
QApplicationPrivate::notify_helper(QObject*, QEvent*) (in
/usr/lib64/libQtGui.so.4.7.4)
==11291==    by 0xB451369: QApplication::notify(QObject*, QEvent*) (in
/usr/lib64/libQtGui.so.4.7.4)
==11291==    by 0xAE6EE05: KApplication::notify(QObject*, QEvent*) (in
/usr/lib64/libkdeui.so.5.6.0)
==11291==    by 0xC7C431B: QCoreApplication::notifyInternal(QObject*,
QEvent*) (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xC7C7B24:
QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)
(in /usr/lib64/libQtCore.so.4.7.4)
==11291==
==11291== Invalid read of size 8
==11291==    at 0xC7D68A4: QObject::moveToThread(QThread*) (in
/usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0x7CBA95B: Digikam::ParkingThread::run() (threadmanager.cpp:130)
==11291==    by 0xC6DA1E4: ??? (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xCB00D24: start_thread (in /lib64/libpthread-2.12.1.so)
==11291==    by 0xDAF423C: clone (in /lib64/libc-2.12.1.so)
==11291==  Address 0x40 is not stack'd, malloc'd or (recently) free'd
==11291==
KCrash: Application 'digikam' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/gilles/.kde4/socket-localhost.localdomain/kdeinit4__0
==11291== Thread 11:
==11291== Invalid read of size 8
==11291==    at 0xC7D54B0: QObject::thread() const (in
/usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0x7CBA7F9:
Digikam::ParkingThread::moveToCurrentThread(QObject*)
(threadmanager.cpp:98)
==11291==    by 0x7CB9D2B: Digikam::WorkerObjectRunnable::run()
(threadmanager.cpp:178)
==11291==    by 0xC6CF057: ??? (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xC6DA1E4: ??? (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xCB00D24: start_thread (in /lib64/libpthread-2.12.1.so)
==11291==    by 0xDAF423C: clone (in /lib64/libc-2.12.1.so)
==11291==  Address 0x3c110f68 is 8 bytes inside a block of size 40 free'd
==11291==    at 0x4C244CE: operator delete(void*) (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==11291==    by 0x6BF721: Digikam::DatabaseWriter::~DatabaseWriter()
(facepipeline_p.h:245)
==11291==    by 0x6BD5EB: Digikam::FacePipeline::~FacePipeline()
(facepipeline.cpp:1144)
==11291==    by 0x51DD06:
Digikam::FaceDetector::FaceDetectorPriv::~FaceDetectorPriv() (in
/usr/bin/digikam)
==11291==    by 0x51C9E4: Digikam::FaceDetector::~FaceDetector()
(facedetector.cpp:225)
==11291==    by 0x51CA53: Digikam::FaceDetector::~FaceDetector()
(facedetector.cpp:226)
==11291==    by 0xC7D88E7: QObject::event(QEvent*) (in
/usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xB44C793:
QApplicationPrivate::notify_helper(QObject*, QEvent*) (in
/usr/lib64/libQtGui.so.4.7.4)
==11291==    by 0xB451369: QApplication::notify(QObject*, QEvent*) (in
/usr/lib64/libQtGui.so.4.7.4)
==11291==    by 0xAE6EE05: KApplication::notify(QObject*, QEvent*) (in
/usr/lib64/libkdeui.so.5.6.0)
==11291==    by 0xC7C431B: QCoreApplication::notifyInternal(QObject*,
QEvent*) (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xC7C7B24:
QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)
(in /usr/lib64/libQtCore.so.4.7.4)
==11291==
==11291== Invalid read of size 8
==11291==    at 0xC7D54B4: QObject::thread() const (in
/usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0x7CBA7F9:
Digikam::ParkingThread::moveToCurrentThread(QObject*)
(threadmanager.cpp:98)
==11291==    by 0x7CB9D2B: Digikam::WorkerObjectRunnable::run()
(threadmanager.cpp:178)
==11291==    by 0xC6CF057: ??? (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xC6DA1E4: ??? (in /usr/lib64/libQtCore.so.4.7.4)
==11291==    by 0xCB00D24: start_thread (in /lib64/libpthread-2.12.1.so)
==11291==    by 0xDAF423C: clone (in /lib64/libc-2.12.1.so)
==11291==  Address 0x40 is not stack'd, malloc'd or (recently) free'd
==11291==
Unable to start Dr. Konqi

Gilles Caulier



More information about the Digikam-devel mailing list