[Digikam-devel] Re: macosx - macport - crash when i lauch icon view context menu

Gilles Caulier caulier.gilles at gmail.com
Tue Nov 2 09:11:09 GMT 2010


Not sure. Look valgrind trace :

==12326== Thread 14:
==12326== Conditional jump or move depends on uninitialised value(s)
==12326==    at 0x101DE5962: SeekBitRange(unsigned int*, unsigned int,
unsigned int) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DE25F9: CDecoder::ComposeBitplane(unsigned int,
unsigned int, unsigned int*, unsigned int*, unsigned int*) (in
/opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DE2B5B: CDecoder::BitplaneDecode(unsigned int)
(in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DE2ED5: CDecoder::DecodeBuffer() (in
/opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DE2F40: CDecoder::DequantizeValue(CSubband*,
unsigned int, int) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DE30F5: CDecoder::Partition(CSubband*, int, int,
int, int, int) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DEF46E: CSubband::PlaceTile(CDecoder&, int, bool,
unsigned int, unsigned int) (in
/opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DECD15: CPGFImage::Read(int, bool (*)(double,
bool, void*), void*) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DF2201: Digikam::readPGFImageData(QByteArray
const&, QImage&) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DC8776:
Digikam::ThumbnailCreator::loadFromDatabase(Digikam::ThumbnailInfo
const&) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DCAEB0: Digikam::ThumbnailCreator::load(QString
const&) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101DD2255: Digikam::ThumbnailLoadingTask::execute()
(in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==
digikam(12326)/KEXIV2 KExiv2Iface::KExiv2::getImageOrientation:
Orientation => Exif.Image.Orientation =>  8
==12326== Thread 1:
==12326== Conditional jump or move depends on uninitialised value(s)
==12326==    at 0x1019D5778: pthread_rwlock_init (in /usr/lib/libSystem.B.dylib)
==12326==    by 0x10517BE73: _nl_load_domain (in /opt/local/lib/libintl.8.dylib)
==12326==    by 0x10517B88D: _nl_find_domain (in /opt/local/lib/libintl.8.dylib)
==12326==    by 0x10517EC16: libintl_dcigettext (in
/opt/local/lib/libintl.8.dylib)
==12326==    by 0x10C0B1FDE: g_dir_open (in /opt/local/lib/libglib-2.0.0.dylib)
==12326==    by 0x101D65501: lfDatabase::Load() (in
/opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101D4E130: Digikam::LensFunIface::init() (in
/opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101D4E1AC: Digikam::LensFunIface::LensFunIface() (in
/opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101D45BF1:
Digikam::LensFunCameraSelector::LensFunCameraSelector(QWidget*) (in
/opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x1001E5664:
Digikam::LensAutoFix::LensAutoFix(QObject*) (in ./digikam)
==12326==    by 0x1001973B4:
Digikam::BatchToolsManager::BatchToolsManager(QObject*) (in ./digikam)
==12326==    by 0x100188BCD: Digikam::QueueMgrWindow::QueueMgrWindow()
(in ./digikam)
==12326==
digikam(12326)/digikam (core)
Digikam::LensFunCameraSelector::populateLensCombo: variant:
QVariant(Digikam::LensFunIface::DevicePtr, )
digikam(12326)/digikam (core)
Digikam::LensFunCameraSelector::populateLensCombo: dev:  Asahi Optical
Co.,Ltd  ::  PENTAX Optio 430
digikam(12326)/digikam (core) Digikam::LensFunIface::findCamera:
Search for camera  "" - ""  ==> false
digikam(12326)/digikam (core) Digikam::LensFunIface::findLens: Search
for lens  ""  ==> false
digikam(12326)/digikam (core) Digikam::CurvesWidget::updateData: updating data
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Filling this curve from
other curve  0x136d19750
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Both curves have same type:
isSixteenBits =  true
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Updating curve types
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Curve type for channel  0
is  0
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Curve type for channel  1
is  0
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Curve type for channel  2
is  0
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Curve type for channel  3
is  0
digikam(12326)/digikam (core)
Digikam::ImageCurves::fillFromOtherCurves: Curve type for channel  4
is  0
digikam(12326)/digikam (core) Digikam::BlurFilter::gaussianBlurImage:
BlurFilter::Process Computation...
==12326== Thread 36:
==12326== Invalid free() / delete / delete[]
==12326==    at 0x10089D9DC: operator delete[](void*) (vg_replace_malloc.c:409)
==12326==    by 0x101C23CDD: cimg_library::CImg<unsigned
char>::~CImg() (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==    by 0x101C22994:
Digikam::BlurFilter::gaussianBlurImage(unsigned char*, int, int, bool,
double) (in /opt/local/lib/libdigikamcore.1.0.0.dylib)
==12326==  Address 0x3f800000 is not stack'd, malloc'd or (recently) free'd
==12326==
==12326== Jump to the invalid address stated on the next line
==12326==    at 0x0: ???
==12326==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
==12326==
==12326==
==12326== Process terminating with default action of signal 11 (SIGSEGV)
==12326==  General Protection Fault
==12326==    at 0x101A7CF2D: dyld_stub_binder (in /usr/lib/libSystem.B.dylib)
==12326==    by 0x1037D834F: ??? (in /opt/local/lib/libkdeui.5.5.0.dylib)
==12326==    by 0x1380497F3: ???
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
--12326:0:schedule VG_(sema_down): read returned -4
==12326==
==12326== HEAP SUMMARY:
==12326==     in use at exit: 118,740,456 bytes in 1,632,787 blocks
==12326==   total heap usage: 5,408,312 allocs, 3,775,526 frees,
1,376,527,463 bytes allocated
==12326==

It's in CImg with blur tool instance initialized into BQM as tool... I think...

Gilles

2010/11/2 Martin Klapetek <martin.klapetek at gmail.com>:
> The malloc line (digikam(6056,0x11bc99000) malloc: *** error for object
> 0x3f800000: pointer being freed was not allocated) seems like a low-level
> crash, furthermore you can see from the backtrace, that it crashes
> in QMutexPrivate::wakeUp () and two lines up you can
> see semaphore_signal_trap(), so I guess, that there is something wrong with
> Qt and handling threads on mac.
> Marty
>
> On Tue, Nov 2, 2010 at 07:36, Gilles Caulier <caulier.gilles at gmail.com>
> wrote:
>>
>> Why a Qt bug Martin ?
>>
>> It sound like something in BQM is wrong, probably with memory allocation
>>
>> I can see another crash with BQM if i press B key to lauch it.
>>
>> I will run valgrind to investiguate
>>
>> Gilles
>>
>> 2010/11/1 Martin Klapetek <martin.klapetek at gmail.com>:
>> > Seems like Qt bug, no?
>> >
>> > Marty
>> >
>> > On 1 Nov 2010 23:22, "Gilles Caulier" <caulier.gilles at gmail.com> wrote:
>> >> Hi all,
>> >>
>> >> I successfuly compile all code from trunk under macosx through
>> >> macports project. KDE 4.5.2 and Qt4.7 are there.
>> >>
>> >> When i right click on an icon view item to lauch context menu, digiKam
>> >> crash violently. Look trace below :
>> >>
>> >> digikam(6056,0x11bc99000) malloc: *** error for object 0x3f800000:
>> >> pointer being freed was not allocated
>> >> *** set a breakpoint in malloc_error_break to debug
>> >> digikam(6056,0x11bdc5000) malloc: *** error for object 0x3f800000:
>> >> pointer being freed was not allocated
>> >> *** set a breakpoint in malloc_error_break to debug
>> >>
>> >> Program received signal SIGABRT, Aborted.
>> >> 0x00007fff86c26312 in semaphore_signal_trap ()
>> >> (gdb) bt
>> >> #0 0x00007fff86c26312 in semaphore_signal_trap ()
>> >> #1 0x00007fff86c2baf5 in pthread_mutex_unlock ()
>> >> #2 0x00000001047529a8 in QMutexPrivate::wakeUp ()
>> >> #3 0x0000000101b82f22 in Digikam::ThreadManager::schedule
>> >> (this=0x11b754e70, runnable=0x14cfce0a0) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/libs/threads/threadmanager.cpp:242
>> >> #4 0x0000000101b8570a in Digikam::DynamicThread::start
>> >> (this=0x14cfcdf60, locker=@0x7fff5fbfcff0) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/libs/threads/dynamicthread.cpp:172
>> >> #5 0x0000000101b85749 in Digikam::DynamicThread::start
>> >> (this=0x14cfcdf60) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/libs/threads/dynamicthread.cpp:142
>> >> #6 0x00000001019a78d8 in Digikam::DImgThreadedFilter::startFilter
>> >> (this=0x14cfcdf60) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/libs/dimg/filters/dimgthreadedfilter.cpp:122
>> >> #7 0x0000000101bed980 in Digikam::PreviewThreadWrapper::startFilters
>> >> (this=0x14cfbef40) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/utilities/imageeditor/widgets/previewlist.cpp:120
>> >> #8 0x0000000101beda62 in Digikam::PreviewList::startFilters
>> >> (this=0x14cfbc510) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/utilities/imageeditor/widgets/previewlist.cpp:262
>> >> #9 0x00000001019dd522 in
>> >> Digikam::BWSepiaSettings::startPreviewFilters (this=0x14cfb9170) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/libs/dimg/filters/bw/bwsepiasettings.cpp:428
>> >> #10 0x00000001001a9d12 in Digikam::BWConvert::BWConvert
>> >> (this=0x14cfab090, parent=0x14c410600) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/utilities/queuemanager/basetools/color/bwconvert.cpp:56
>> >> #11 0x00000001001975e2 in
>> >> Digikam::BatchToolsManager::BatchToolsManager (this=0x14c410600,
>> >> parent=0x126cf20d0) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/utilities/queuemanager/batchtoolsmanager.cpp:116
>> >> #12 0x0000000100188bce in Digikam::QueueMgrWindow::QueueMgrWindow
>> >> (this=0x126cf20d0) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/utilities/queuemanager/queuemgrwindow.cpp:134
>> >> #13 0x0000000100188f84 in Digikam::QueueMgrWindow::queueManagerWindow
>> >> () at
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/utilities/queuemanager/queuemgrwindow.cpp:105
>> >> #14 0x000000010024ccf7 in
>> >> Digikam::ContextMenuHelper::addQueueManagerMenu (this=0x7fff5fbfd7c0)
>> >> at
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/digikam/contextmenuhelper.cpp:717
>> >> #15 0x0000000100281ded in
>> >> Digikam::DigikamImageView::showContextMenuOnInfo (this=0x107a96550,
>> >> event=0x7fff5fbfe5d0, info=@0x7fff5fbfd8d0) at
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/digikam/digikamimageview.cpp:212
>> >> #16 0x000000010029e52a in
>> >> Digikam::ImageCategorizedView::showContextMenuOnIndex
>> >> (this=0x107a96550, event=0x7fff5fbfe5d0, index=@0x7fff5fbfd920) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/digikam/imagecategorizedview.cpp:491
>> >> #17 0x0000000101b90b23 in Digikam::DCategorizedView::contextMenuEvent
>> >> (this=0x107a96550, event=0x7fff5fbfe5d0) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/libs/widgets/common/dcategorizedview.cpp:537
>> >> #18 0x00000001037a4c11 in QWidget::event ()
>> >> #19 0x0000000103afe24c in QFrame::event ()
>> >> #20 0x0000000103b89457 in QAbstractScrollArea::viewportEvent ()
>> >> #21 0x0000000103c1a78b in QAbstractItemView::viewportEvent ()
>> >> #22 0x0000000101b901d2 in Digikam::DCategorizedView::viewportEvent
>> >> (this=0x107a96550, event=0x7fff5fbfe5d0) at
>> >>
>> >>
>> >> /Users/agnes/Devel/trunk/graphics/digikam/libs/widgets/common/dcategorizedview.cpp:704
>> >> #23 0x0000000103b8b930 in QAbstractScrollAreaFilter::eventFilter ()
>> >> #24 0x0000000104875ce7 in
>> >> QCoreApplicationPrivate::sendThroughObjectEventFilters ()
>> >> #25 0x000000010374e3be in QApplicationPrivate::notify_helper ()
>> >> #26 0x00000001037533e2 in QApplication::notify ()
>> >> #27 0x000000010329e59e in KApplication::notify ()
>> >> #28 0x000000010479b5ac in QCoreApplication::notifyInternal ()
>> >> #29 0x000000010374d56c in qt_sendSpontaneousEvent ()
>> >> #30 0x0000000103704e10 in qt_mac_handleMouseEvent ()
>> >> #31 0x00007fff83d90483 in -[NSWindow sendEvent:] ()
>> >> #32 0x00000001036fcc26 in -[QCocoaWindow sendEvent:] ()
>> >> #33 0x00007fff83cc4ee2 in -[NSApplication sendEvent:] ()
>> >> #34 0x0000000103700198 in -[QNSApplication sendEvent:] ()
>> >> #35 0x00007fff83c5b922 in -[NSApplication run] ()
>> >> #36 0x0000000103709ca5 in QEventDispatcherMac::processEvents ()
>> >> #37 0x00000001048753a4 in QEventLoop::processEvents ()
>> >> #38 0x00000001048756c4 in QEventLoop::exec ()
>> >> #39 0x0000000104876ccc in QCoreApplication::exec ()
>> >> #40 0x00000001003750c1 in main (argc=1, argv=0x7fff5fbff790) at
>> >> /Users/agnes/Devel/trunk/graphics/digikam/digikam/main.cpp:195
>> >> #41 0x000000010000fae4 in start () at qstring.h:882
>> >> (gdb)
>> >>
>> >> Any suggestions ?
>> >>
>> >> Gilles Caulier
>> >> _______________________________________________
>> >> Digikam-devel mailing list
>> >> Digikam-devel at kde.org
>> >> https://mail.kde.org/mailman/listinfo/digikam-devel
>> >
>> > _______________________________________________
>> > Digikam-devel mailing list
>> > Digikam-devel at kde.org
>> > https://mail.kde.org/mailman/listinfo/digikam-devel
>> >
>> >
>> _______________________________________________
>> Digikam-devel mailing list
>> Digikam-devel at kde.org
>> https://mail.kde.org/mailman/listinfo/digikam-devel
>
>
> _______________________________________________
> Digikam-devel mailing list
> Digikam-devel at kde.org
> https://mail.kde.org/mailman/listinfo/digikam-devel
>
>



More information about the Digikam-devel mailing list