[Digikam-devel] [Bug 155105] New: broken png image present in albums folder causes digikam to crash when starting

MichaƂ Kosmulski mkosmul at users.sourceforge.net
Fri Jan 4 19:13:13 GMT 2008


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=155105         
           Summary: broken png image present in albums folder causes digikam
                    to crash when starting
           Product: digikam
           Version: unspecified
          Platform: Slackware Packages
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: setup
        AssignedTo: digikam-devel kde org
        ReportedBy: mkosmul users sourceforge net


Version:           0.9.3 (using KDE KDE 3.5.7)
Installed from:    Slackware Packages
Compiler:          gcc (GCC) 4.1.2 
OS:                Linux

The image I will attach to this report is a broken PNG file generated by a rather old version of Kooka when it run out of memory while scanning some document. When this image is present in a subfolder of the main albums folder, digikam crashes when starting up, producing the following backtrace:
(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1256372496 (LWP 4031)]
[KCrash handler]
#5  0xb745d36e in Exiv2::PngChunk::decode () from /usr/lib/libexiv2.so.0
#6  0xb745c47b in Exiv2::PngImage::readMetadata () from /usr/lib/libexiv2.so.0
#7  0xb74cb9de in KExiv2Iface::KExiv2::load () from /usr/lib/libkexiv2.so.3
#8  0xb7e41ffc in Digikam::DMetadata::load () from /usr/lib/libdigikam.so.0
#9  0xb7e4206c in Digikam::DMetadata::DMetadata ()
   from /usr/lib/libdigikam.so.0
#10 0xb7d1ed28 in Digikam::ScanLib::storeItemInDatabase ()
   from /usr/lib/libdigikam.so.0
#11 0xb7d20ec8 in Digikam::ScanLib::allFiles () from /usr/lib/libdigikam.so.0
#12 0xb7d20e76 in Digikam::ScanLib::allFiles () from /usr/lib/libdigikam.so.0
#13 0xb7d216ef in Digikam::ScanLib::findMissingItems ()
   from /usr/lib/libdigikam.so.0
#14 0xb7d2197d in Digikam::ScanLib::startScan () from /usr/lib/libdigikam.so.0
#15 0xb7cdac87 in Digikam::AlbumManager::setLibraryPath ()
   from /usr/lib/libdigikam.so.0
#16 0x0804ad38 in main ()

Both the fact that this image can't be opened by kuickshow and the backtrace suggest the problem may lie within some libraries external to digikam. However, digikam certainly shouldn't crash - it should display an error message and just show a placeholder instead of thumbnail for that single image.
The GIMP is able to open this image - it displays a warning and then shows the partial image that is available (i.e, the upper part of the image is visible and the missing lower part is all black).

Once the invalid image is moved out of the album folder so digikam no longer notices it, digikam can start up normally.



More information about the Digikam-devel mailing list