[Digikam-devel] Memory corruption in svn head

Craig Howard digikam at choward.ca
Sat Sep 10 10:10:31 BST 2005


This appears to be fixed in the current head.  I'm not sure what it was, but
it could easily have been my fault.  Thanks.

On Friday 09 September 2005 05:35, Gilles Caulier wrote:
> Le Mardi 06 Septembre 2005 10:20 PM, vous avez écrit :
> > On Tuesday 06 September 2005 15:55, you wrote:
> > > hum perhaps your database file is corrupted. Witch messages you have
> > > when you start digikam from a console ?
> >
> > [snip]
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_WhiteBalance
> > digikam: ImagePlugin_BlurFX plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_BlurFX
> > digikam: ImagePlugin_Despeckle plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Despeckle
> > digikam: ImagePlugin_AntiVignetting plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_AntiVignetting
> > digikam: ImagePlugin_AdjustCurves plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_AdjustCurves
> > digikam: ImagePlugin_FreeRotation plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_FreeRotation
> > digikam: ImagePlugin_Perspective plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Perspective
> > digikam: ImagePlugin_ChannelMixer plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_ChannelMixer
> > digikam: ImagePlugin_Charcoal plugin loaded
> > digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Charcoal
> > *** glibc detected *** malloc(): memory corruption: 0x081651b0 ***
> > zsh: alarm      digikam
> >
> > Not very descriptive, is it?
>
> no. A better way to check memory problem is to use valgrind like this :
>
> // go to your local SVN copy in digikam source code
> # cd graphics/digikam/digikam
>
> // start valgrind to test memory using.
> # valgrind --tool=memcheck ./digikam
>
> You will have console messages like this :
>
> [gilles at pc-caulier digikam]$ pwd
> /mnt/Temp2/SVN/trunk/graphics/digikam/digikam
> [gilles at pc-caulier digikam]$ valgrind --tool=memcheck ./digikam
> ==20533== Memcheck, a memory error detector for x86-linux.
> ==20533== Copyright (C) 2002-2004, and GNU GPL'd, by Julian Seward et al.
> ==20533== Using valgrind-2.2.0, a program supervision framework for
> x86-linux. ==20533== Copyright (C) 2000-2004, and GNU GPL'd, by Julian
> Seward et al. ==20533== For more details, rerun with: -v
> ==20533==
> ==20533== Conditional jump or move depends on uninitialised value(s)
> ==20533==    at 0x1B8F499F: strchr (strchr.S:177)
> ==20533==
> ==20533== Conditional jump or move depends on uninitialised value(s)
> ==20533==    at 0x1B8ECD80: _dl_relocate_object (do-rel.h:104)
> ==20533==    by 0x1BA208A9: (within /lib/tls/libc-2.3.4.so)
> ==20533==    by 0x1B8EF475: _dl_catch_error (dl-error.c:161)
> ==20533==    by 0x1BA21427: _dl_open (in /lib/tls/libc-2.3.4.so)
> ==20533==
> ==20533== Conditional jump or move depends on uninitialised value(s)
> ==20533==    at 0x1B8ECDA5: _dl_relocate_object (do-rel.h:117)
> ==20533==    by 0x1BA208A9: (within /lib/tls/libc-2.3.4.so)
> ==20533==    by 0x1B8EF475: _dl_catch_error (dl-error.c:161)
> ==20533==    by 0x1BA21427: _dl_open (in /lib/tls/libc-2.3.4.so)
> ==20537==
> ==20537== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 18 from 3)
> ==20537== malloc/free: in use at exit: 0 bytes in 0 blocks.
> ==20537== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
> ==20537== For a detailed leak analysis,  rerun with: --leak-check=yes
> ==20537== For counts of detected errors, rerun with: -v
> ==20535==
> ==20535== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 18 from 3)
> ==20535== malloc/free: in use at exit: 0 bytes in 0 blocks.
> ==20535== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
> ==20535== For a detailed leak analysis,  rerun with: --leak-check=yes
> ==20535== For counts of detected errors, rerun with: -v
> ==20541==
> ==20541== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 18 from 3)
> ==20541== malloc/free: in use at exit: 0 bytes in 0 blocks.
> ==20541== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
> ==20541== For a detailed leak analysis,  rerun with: --leak-check=yes
> ==20541== For counts of detected errors, rerun with: -v
> ==20539==
> ==20539== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 18 from 3)
> ==20539== malloc/free: in use at exit: 0 bytes in 0 blocks.
> ==20539== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
> ==20539== For a detailed leak analysis,  rerun with: --leak-check=yes
> ==20539== For counts of detected errors, rerun with: -v
> ==20545==
> ==20545== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 18 from 3)
> ==20545== malloc/free: in use at exit: 0 bytes in 0 blocks.
> ==20545== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
> ==20545== For a detailed leak analysis,  rerun with: --leak-check=yes
> ==20545== For counts of detected errors, rerun with: -v
> ==20551==
> ==20551== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 18 from 3)
> ==20551== malloc/free: in use at exit: 0 bytes in 0 blocks.
> ==20551== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
> ==20551== For a detailed leak analysis,  rerun with: --leak-check=yes
> ==20551== For counts of detected errors, rerun with: -v
> ==20553==
> ==20553== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 18 from 3)
> ==20553== malloc/free: in use at exit: 0 bytes in 0 blocks.
> ==20553== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
> ==20553== For a detailed leak analysis,  rerun with: --leak-check=yes
> ==20553== For counts of detected errors, rerun with: -v
> digikam: ScanLib: Finding non-existing Albums: 17 ms
> digikam: ScanLib: Finding items not in the database or disk: 973 ms
> digikam: ScanLib: Updating items without date: 6 ms
> digikam: WARNING: Failed to find parent for Tag Events
> digikam: WARNING: Failed to find parent for Tag Peoples
> digikam: WARNING: Failed to find parent for Tag Places
> digikam: WARNING: Failed to find parent for Tag Travels
> digikam: WARNING: Failed to find parent for Tag Friends
> KIPI (loading): KIPI::PluginLoader: plugin KameraKlient is in the ignore
> list for host application
> KIPI (loading): Plugin_JPEGLossless plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin JPEGLossless
> KIPI (loading): Plugin_CDArchiving plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin CDArchiving
> KIPI (loading): Plugin_Imagesgallery plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin ImagesGallery
> KIPI (loading): Plugin_SendImages plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin SendImages
> KIPI (loading): Plugin_FlickrExport plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin FlickrExport
> KIPI (loading): Loaded Plugin_Calendar
> KIPI (loading): KIPI::PluginLoader: Loaded plugin Calendar
> KIPI (loading): Plugin_Mpegencoder plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin MPEGEncoder
> KIPI (loading): Plugin_AcquireImages plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin AcquireImages
> KIPI (loading): Plugin_GalleryExport plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin GalleryExport
> KIPI (loading): Plugin_TimeAdjust plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin TimeAdjust
> KIPI (loading): Plugin_FindImages plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin FindImages
> KIPI (loading): Plugin_PrintWizard plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin PrintWizard
> KIPI (loading): Plugin_WallPaper plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin WallPaper
> KIPI (loading): Plugin_BatchProcessImages plugin loaded
> KIPI (loading): KIPI::PluginLoader: Loaded plugin BatchProcessImages
> KIPI (loading): Loaded RawConverter
> KIPI (loading): KIPI::PluginLoader: Loaded plugin RawConverter
> digikam: ImagePlugin_Core plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Core
> digikam: ImagePlugin_RainDrop plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_RainDrop
> digikam: ImagePlugin_InPainting plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_InPainting
> digikam: ImagePlugin_Infrared plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Infrared
> digikam: ImagePlugin_Texture plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Texture
> digikam: ImagePlugin_Border plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Border
> digikam: ImagePlugin_OilPaint plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_OilPaint
> digikam: ImagePlugin_InsertText plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_InsertText
> digikam: ImagePlugin_Emboss plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Emboss
> digikam: ImagePlugin_Unsharp plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Unsharp
> digikam: ImagePlugin_HotPixels plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_HotPixels
> digikam: ImagePlugin_AdjustLevels plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_AdjustLevels
> digikam: ImagePlugin_ShearTool plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_ShearTool
> digikam: ImagePlugin_Solarize plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Solarize
> digikam: ImagePlugin_DistortionFX plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_DistortionFX
> digikam: ImagePlugin_LensDistortion plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_LensDistortion
> digikam: ImagePlugin_FilmGrain plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_FilmGrain
> digikam: ImagePlugin_BlowUp plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_BlowUp
> digikam: ImagePlugin_Restoration plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Restoration
> digikam: ImagePlugin_SuperImpose plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_SuperImpose
> digikam: ImagePlugin_Refocus plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Refocus
> digikam: ImagePlugin_WhiteBalance plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_WhiteBalance
> digikam: ImagePlugin_BlurFX plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_BlurFX
> digikam: ImagePlugin_Despeckle plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Despeckle
> digikam: ImagePlugin_AntiVignetting plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_AntiVignetting
> digikam: ImagePlugin_AdjustCurves plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_AdjustCurves
> digikam: ImagePlugin_FreeRotation plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_FreeRotation
> digikam: ImagePlugin_Perspective plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Perspective
> digikam: ImagePlugin_ChannelMixer plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_ChannelMixer
> digikam: ImagePlugin_Charcoal plugin loaded
> digikam: ImagePluginLoader: Loaded plugin ImagePlugin_Charcoal
> ...
>
> ... use digikam normally and report me all console messages.

--

Craig Howard



More information about the Digikam-devel mailing list