[digikam] [Bug 370287] New: Crash rotating image taken with Casio camera

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 370287] New: Crash rotating image taken with Casio camera

bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=370287

            Bug ID: 370287
           Summary: Crash rotating image taken with Casio camera
           Product: digikam
           Version: 5.2.0
          Platform: Ubuntu Packages
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: ImageEditor-Tool-Resize
          Assignee: [hidden email]
          Reporter: [hidden email]

I've noticed a strange crash.
I've an image taken with a Casio Exilim EX-Z150.
When I try to rotate it digikam crashes. This is the console log:

***
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena càmera nikon
d5100/"
digikam.database: Starting scan!
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena càmera nikon
d5100/"
digikam.general: LoadingCache slotFileDirty  "/home/miquel/sanas/fotos/2013/per
ordenar/2013-08-14-estrena càmera nikon d5100/2013-08-14 19-41-41.JPG"
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena càmera nikon
d5100/"
digikam.metaengine: Metadata for file "2013-08-14 19-41-41.JPG" written to
file.
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena càmera nikon
d5100/"
digikam.metaengine: Orientation => Exif.Image.Orientation =>  1
digikam.dimg: "/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena
càmera nikon d5100/2013-08-14 19-41-41.JPG"  : JPEG file identified
digikam.metaengine: Loading image history  ""
digikam.metaengine: DateTime => Exif.Photo.DateTimeOriginal =>
QDateTime(2013-08-14 19:41:41.000 CEST Qt::TimeSpec(LocalTime))
digikam.database: Starting scan!
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC
profile.
digikam.general: mimetype =  "JPEG"  ext =  "JPG"
digikam.metaengine: Orientation => Exif.Image.Orientation =>  1
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena càmera nikon
d5100/"
digikam.general: Stacked View Mode :  1
digikam.database: Starting scan!
digikam.metaengine: Exif.Image.Orientation tag set to:  1
digikam.metaengine: Exif Thumbnail Orientation:  1
digikam.metaengine: MetaEngine::metadataWritingMode 0
digikam.metaengine: Will write Metadata to file
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena càmera nikon
d5100/JpegRotator-T16704.digikamtempfile.jpg"
digikam.metaengine: wroteComment:  true
digikam.metaengine: wroteEXIF:  true
digikam.metaengine: wroteIPTC:  true
digikam.metaengine: wroteXMP:  true
digikam5: tiffcomposite.cpp:749: virtual Exiv2::Internal::TiffComponent*
Exiv2::Internal::TiffMnEntry::doAddPath(uint16_t, Exiv2::Internal::TiffPath&,
Exiv2::Internal::TiffComponent*, Exiv2::Internal::TiffComponent::AutoPtr):
L’asserció «mn_» ha fallat.
Avortat (bolcat de la imatge del nucli)
***
 I've been unable to reproduce it from gdb because when I enter the image
digikam hangs and I can't even click the button to rotate the image.

But googling around Ive found this bug (Crash in exiv2 due to assertion when
setting rating on jpg with a Casio makernote):
http://dev.exiv2.org/issues/1106

I'm using Ubuntu Gnome 16.04 with the packages provided by Philip Johnsson, and
I had not installed exiv2. So I tried to install it:

$ sudo apt-get install exiv2
$ exiv2 --version
exiv2 0.25 001900 (64 bit build)
Copyright (C) 2004-2015 Andreas Huggel.

and restarted digikam. Now it's working fine!

This is the log from the console now:
***
digikam.general: mimetype =  "JPEG"  ext =  "JPG"
digikam.general: No write to baloo +++++++++++++++++++++++++++++++++++++
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.

digikam.metaengine: "/home/miquel/sanas/fotos/2013/per
ordenar/2013-08-14-estrena camera nikon d5100/2013-08-14 19-41-41.JPG"  ==>
Title:  QMap()
digikam.metaengine: "/home/miquel/sanas/fotos/2013/per
ordenar/2013-08-14-estrena camera nikon d5100/2013-08-14 19-41-41.JPG"  ==>
Comment:  QMap()
digikam.metaengine: "/home/miquel/sanas/fotos/2013/per
ordenar/2013-08-14-estrena camera nikon d5100/2013-08-14 19-41-41.JPG"  ==>
Pick Label:  0
digikam.metaengine: "/home/miquel/sanas/fotos/2013/per
ordenar/2013-08-14-estrena camera nikon d5100/2013-08-14 19-41-41.JPG"  ==>
Color Label:  0
digikam.metaengine: Rating value to write is out of range!
digikam.general: Writting tags
digikam.general: Delete all keywords
digikam.metaengine: "/home/miquel/sanas/fotos/2013/per
ordenar/2013-08-14-estrena camera nikon d5100/2013-08-14 19-41-41.JPG"  ==>
Read Iptc Keywords:  ()
digikam.metaengine: "/home/miquel/sanas/fotos/2013/per
ordenar/2013-08-14-estrena camera nikon d5100/2013-08-14 19-41-41.JPG"  ==> New
Iptc Keywords:  ()
digikam.metaengine: xmlACDSee "<Categories></Categories>"
digikam.metaengine: MetaEngine::metadataWritingMode 0
digikam.metaengine: Will write Metadata to file
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/2013-08-14 19-41-41.JPG"
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.

digikam.metaengine: wroteComment:  true
digikam.metaengine: wroteEXIF:  true
digikam.metaengine: wroteIPTC:  true
digikam.metaengine: wroteXMP:  true
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.

digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.database: Starting scan!
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.metaengine: Metadata for file "2013-08-14 19-41-41.JPG" written to
file.
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.

digikam.metaengine: Orientation => Exif.Image.Orientation =>  1
digikam.general: mimetype =  "JPEG"  ext =  "JPG"
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.database: Starting scan!
digikam.metaengine: Exif.Image.Orientation tag set to:  1
digikam.metaengine: Exif Thumbnail Orientation:  1
digikam.metaengine: MetaEngine::metadataWritingMode 0
digikam.metaengine: Will write Metadata to file
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/JpegRotator-J17816.digikamtempfile.jpg"
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.

digikam.metaengine: wroteComment:  true
digikam.metaengine: wroteEXIF:  true
digikam.metaengine: wroteIPTC:  true
digikam.metaengine: wroteXMP:  true
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.

digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.database: Starting scan!
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.metaengine: Metadata for file "JpegRotator-J17816.digikamtempfile.jpg"
written to file.
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.general: Detected change, triggering rescan of
"/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena camera nikon
d5100/"
digikam.dimg: "/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena
camera nikon d5100/2013-08-14 19-41-41.JPG"  : JPEG file identified
digikam.database: Starting scan!
digikam.database: Scanning took 64 ms
digikam.database: Finishing took 148 ms
digikam.dimg: "/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena
camera nikon d5100/2013-08-14 19-41-41.JPG"  : JPEG file identified
digikam.dimg: "/home/miquel/sanas/fotos/2013/per ordenar/2013-08-14-estrena
camera nikon d5100/2013-08-14 19-41-41.JPG"  : JPEG file identified
digikam.metaengine: Orientation => Exif.Image.Orientation =>  1
digikam.metaengine: Orientation => Exif.Image.Orientation =>  1
***

I think the error is in the third line:
***
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.
***

Maybe updating version of Exiv2::Internal should solve this bug.

--
You are receiving this mail because:
You are the assignee for the bug.
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 370287] Crash rotating image taken with Casio camera

bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=370287

--- Comment #1 from Miquel <[hidden email]> ---
Excuse the formatting, I haven't found an option to format console output!

--
You are receiving this mail because:
You are the assignee for the bug.
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 370287] Crash rotating image taken with Casio camera

bugzilla_noreply
In reply to this post by bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=370287

--- Comment #2 from Miquel <[hidden email]> ---
In gdb, when I enter the image it hangs. This is the backtrace:

***
[Switching to Thread 0x7fff3dffb700 (LWP 16325)]

Thread 25 "Thread (pooled)" hit Catchpoint 1 (exception thrown),
0x00007ffff436e8bd in __cxa_throw () from
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
(gdb)
(gdb)
(gdb)
(gdb)
(gdb) bt
#0  0x00007ffff436e8bd in __cxa_throw () from
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1  0x00007ffff0519b25 in
Exiv2::ImageFactory::open(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, bool) ()
   from /usr/lib/x86_64-linux-gnu/libexiv2.so.14
#2  0x00007ffff67ef80f in Digikam::MetaEngine::load
(this=this@entry=0x7fff3dffa500, filePath=...)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/dmetadata/metaengine.cpp:278
#3  0x00007ffff683c736 in Digikam::DMetadata::load
(this=this@entry=0x7fff3dffa500, filePath=...)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/dmetadata/dmetadata.cpp:96
#4  0x00007ffff683c7c2 in Digikam::DMetadata::DMetadata (this=0x7fff3dffa500,
filePath=...)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/dmetadata/dmetadata.cpp:63
#5  0x00007ffff688565a in Digikam::ThumbnailCreator::createThumbnail
(this=this@entry=0xc1a000, info=..., detailRect=...)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/threadimageio/thumbnailcreator.cpp:468
#6  0x00007ffff68888ef in Digikam::ThumbnailCreator::load (this=0xc1a000,
identifier=..., rect=..., pregenerate=pregenerate@entry=true)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/threadimageio/thumbnailcreator.cpp:264
#7  0x00007ffff68893c0 in Digikam::ThumbnailCreator::pregenerate
(this=<optimized out>, identifier=...)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/threadimageio/thumbnailcreator.cpp:197
#8  0x00007ffff6897ef8 in Digikam::ThumbnailLoadingTask::execute
(this=0x2a38d50)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/threadimageio/thumbnailtask.cpp:76
#9  0x00007ffff686d640 in Digikam::LoadSaveThread::run (this=0xc19ed0)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/threadimageio/loadsavethread.cpp:133
#10 0x00007ffff68b2d4e in Digikam::DynamicThread::DynamicThreadPriv::run
(this=0xbeb370)
    at
/build/digikam5-hOQgyH/digikam5-5.2.0/core/libs/threads/dynamicthread.cpp:183
#11 0x00007ffff4aca343 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#12 0x00007ffff4acd84e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007ffff0fc86fa in start_thread (arg=0x7fff3dffb700) at
pthread_create.c:333
#14 0x00007ffff3e08b5d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109
(gdb) quit
A debugging session is active.

    Inferior 1 [process 16297] will be killed.

Quit anyway? (y or n) y
***

--
You are receiving this mail because:
You are the assignee for the bug.
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 370287] Crash rotating image taken with Casio camera

bugzilla_noreply
In reply to this post by bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=370287

[hidden email] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]
         Resolution|---                         |UPSTREAM
          Component|ImageEditor-Tool-Resize     |Metadata-Engine
             Status|UNCONFIRMED                 |RESOLVED

--- Comment #3 from [hidden email] ---
Yes, it's an Exiv2 library crash.

Report this problem to Exiv2 bugzilla with relevant image to test.

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 370287] Crash rotating image taken with Casio camera

bugzilla_noreply
In reply to this post by bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=370287

--- Comment #4 from Miquel <[hidden email]> ---
Thanks Gilles, but the buf is solved in exiv2, I posted in the middle of the
first comment:

***
But googling around Ive found this bug (Crash in exiv2 due to assertion when
setting rating on jpg with a Casio makernote):
http://dev.exiv2.org/issues/1106

I'm using Ubuntu Gnome 16.04 with the packages provided by Philip Johnsson, and
I had not installed exiv2. So I tried to install it:

$ sudo apt-get install exiv2
$ exiv2 --version
exiv2 0.25 001900 (64 bit build)
Copyright (C) 2004-2015 Andreas Huggel.

and restarted digikam. Now it's working fine!
***

So maybe it's the internal exiv2 version that Digikam uses?

Before installing exiv2 I got this error (virtual
Exiv2::Internal::TiffComponent*) :
***
digikam5: tiffcomposite.cpp:749: virtual Exiv2::Internal::TiffComponent*
Exiv2::Internal::TiffMnEntry::doAddPath(uint16_t, Exiv2::Internal::TiffPath&,
Exiv2::Internal::TiffComponent*, Exiv2::Internal::TiffComponent::AutoPtr):
L’asserció «mn_» ha fallat.
***
and after installing the package I got no errors, just an ignored warning
message:
***
digikam.metaengine: Exiv2 ( 2 ) :  Directory Casio2 has an unexpected next
pointer; ignored.
***

Miquel Coll

--
You are receiving this mail because:
You are the assignee for the bug.
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 370287] Crash rotating image taken with Casio camera

bugzilla_noreply
In reply to this post by bugzilla_noreply
https://bugs.kde.org/show_bug.cgi?id=370287

[hidden email] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Version Fixed In|                            |5.3.0
         Resolution|UPSTREAM                    |FIXED

--- Comment #5 from [hidden email] ---
No. digiKam do not have a copy of Exiv2 library. It's a run-time binary
compatibility between Exiv2 .so and libdigikam.so

Gilles Caulier

--
You are receiving this mail because:
You are the assignee for the bug.