Bug 99809 - crash when changing date from exif information
Summary: crash when changing date from exif information
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Metadata-Date (show other bugs)
Version: 0.7.2
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-02-19 19:33 UTC by laurent combe
Modified: 2021-05-09 13:45 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 7.3.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description laurent combe 2005-02-19 19:33:55 UTC
Version:           0.7.2-beta1 (using KDE 3.3.1 (CVS >= 20041110), Mandrake Linux Cooker i586 - Cooker)
Compiler:          gcc version 3.4.1 (Mandrakelinux 10.1 3.4.1-4mdk)
OS:                Linux (i686) release 2.6.10-1mdksmp

When choosing in the context menu "Adjust Time & Date" and "Set file date to camera provided (EXIF) date" dikigam crashes.

My camera : A Canon Powershot A20

reproductible : always
Comment 1 Renchi Raju 2005-02-19 21:15:43 UTC
what version of libkexif, libkipi and kipi-plugins are you using?
Comment 2 Renchi Raju 2005-02-19 21:16:22 UTC
also, a backtrace would be nice :)
Comment 3 laurent combe 2005-02-20 17:53:59 UTC
the version of the packages libkexif0, libkipi0 and kipi-plugins :

$ rpm -q libkexif0 libkipi0 kipi-plugins
libkexif0-0.2.1-2mdk
libkipi0-0.1.1-2mdk
kipi-plugins-0.1.0-0.beta2.2mdk

and the backtrace :
(not very usable ??)

**********
Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1235466016 (LWP 25274)]
[KCrash handler]
#7  0x9498cf6b in ?? ()
**********
Comment 4 Renchi Raju 2005-02-20 18:42:07 UTC
what version of libexif do you have? Do other exif based operations work, for eg, listing the exif properties of a file, using the properties dialog? Additionally, by any chance, are the photos stored on an nfs share or a windows drive or something like that?
Comment 5 laurent combe 2005-02-20 20:37:28 UTC
more complex

with rpm, i detect multiple packages :
# rpm -qa | grep libexif
libexif9-devel-0.5.12-2mdk
libexif9-0.5.12-2mdk
libexif-gtk4-0.3.3-6mdk
libexif12-0.6.11-1mdk

the dynamic linker give me this info :
# ldd /usr/bin/digikam
        linux-gate.so.1 =>  (0xffffe000)
        libdigikam.so.0 => /usr/lib/libdigikam.so.0 (0xb7e18000)
        libgdbm.so.3 => /usr/lib/libgdbm.so.3 (0xb7e11000)
[... cut ...]
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68be000)
[... cut ...]
        libexif.so.9 => /usr/lib/libexif.so.9 (0xb65c6000)

i'm very surprised to find two times the libexif library ...

and finally a view of my libexif lib files :

# ls -al /usr/lib/libexif*
-rw-r--r--  1 root root 227308 sep  1  2003 /usr/lib/libexif.a
lrwxrwxrwx  1 root root     20 oct 29  2003 /usr/lib/libexif-gtk.so.4 -> libexif-gtk.so.4.0.0*
-rwxr-xr-x  1 root root  85020 sep  5  2003 /usr/lib/libexif-gtk.so.4.0.0*
-rwxr-xr-x  1 root root    705 sep  1  2003 /usr/lib/libexif.la*
lrwxrwxrwx  1 root root     16 oct 29  2003 /usr/lib/libexif.so -> libexif.so.9.1.2*
lrwxrwxrwx  1 root root     17 fév 19 16:55 /usr/lib/libexif.so.12 -> libexif.so.12.0.0*
-rwxr-xr-x  1 root root 127744 nov 27 22:12 /usr/lib/libexif.so.12.0.0*
lrwxrwxrwx  1 root root     16 oct 29  2003 /usr/lib/libexif.so.9 -> libexif.so.9.1.2*
-rwxr-xr-x  1 root root  78000 sep  1  2003 /usr/lib/libexif.so.9.1.2*
[root@localhost ~]#  


If you won't another info, no problem
thanks for your help
Comment 6 Renchi Raju 2005-02-21 05:24:56 UTC
ok. this gives more hints into the possible cause of the problem. digikam doesn't link to libexif directly. but it links to two libraries which link to it, libkexif and libgphoto2. you will need to make sure that both libraries link to the same version of libexif. usually, upgrading both packages to latest available could fix the problem
Comment 7 laurent combe 2005-02-21 22:57:48 UTC
ok, i have upgraded the two following packages :

# rpm -q libkexif0 libgphoto2
libkexif0-0.2.1-2mdk
libgphoto2-2.1.5-1mdk


for the package libkexif0 :

# ldd /usr/lib/libkexif.so | grep exif
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb7403000)

for the package libgphoto2 :

# ldd /usr/lib/libgphoto2.so | grep exif
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb7f3a000)

if i do now a ldd on digikam binary :
# ldd /usr/bin/digikam | grep libexif
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68bf000)

libexif is now linked only once

BUT the bug is always here
(with the same backtrace)

*** About comment #4
you said :
Do other exif based operations work, for eg, listing the exif properties of a file, using the properties dialog? 
my answer is : yes, no pb with the exif tab in the properties dialog

Additionally, by any chance, are the photos stored on an nfs share or a windows drive or something like that?
my answer is : no, all my pictures are stored on the unique hard disk of my PC !
Comment 8 Achim Bohnet 2005-02-21 23:37:32 UTC
Because digikam loads dynamicly the digikamimageplugins and kipi-plugins
dynamicly ldd can't list the libraries those plugins use.  You have to
search them too.  Assumed your KDE plugins are installed in /usr/lib/kde3:

ldd /usr/lib/kde3/kipiplugin_*.so | grep libexif
ldd /usr/lib/kde3/digikamimageplugin_*.so | grep libexif

This should only find/list libexif.so.12 as for digikam too.

Achim
Comment 9 laurent combe 2005-02-22 07:14:41 UTC
this is right :

$ ldd /usr/lib/kde3/digikamimageplugin_*.so | grep libexif
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68bd000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68bf000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c1000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c1000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c5000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68aa000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c3000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c5000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c4000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c5000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c2000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c5000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68be000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c2000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c4000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c6000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68b5000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb68c3000)
$ ldd /usr/lib/kde3/kipiplugin_*.so | grep libexif
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb6c5a000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb7eeb000)
        libexif.so.12 => /usr/lib/libexif.so.12 (0xb6c66000)
$  

Comment 10 laurent combe 2005-02-28 21:26:29 UTC
since there is no more messages from few days
i have a new clue for my bug

when i lauch digikam from the prompt i got this
message when digikam crashes maybe it will be helpful for
someone :

$ digikam
QGVector::operator[]: Index -1 out of range
KCrash: Application 'digikam' crashing...
$ 
Comment 11 Tom Albers 2005-02-28 21:43:17 UTC
Does it crash as soon as you tick "Set file date to camera provided (EXIF) date" or after pressing "ok" ?

Comment 12 Tom Albers 2005-02-28 22:58:36 UTC
Could you also check if it crashes when you try it with an other photo, not taken by that camera? If that does not crash, please attach an image to this bug report.
Comment 13 laurent combe 2005-03-02 20:41:31 UTC
to #11 :
it crashes after pressing "ok"

to #12 :
i try with another image taken by a "canon powershot g3" camera
the result is the same : digikam crashes.

i have one question :
am i the only one guy with this bug ? is it reproductible on another PC ?


Comment 14 laurent combe 2005-03-06 15:23:46 UTC
i have upgraded to digikam 0.7.2
with the following rpm :

digikam-0.7.2-1mdk.i586.rpm
digikamimageplugins-0.7.2-1mdk.i586.rpm
libdigikam0-0.7.2-1mdk.i586.rpm

the bug is alwayes here but in the backtrace i have one more info : 

*****
Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1235405120 (LWP 10726)]
[KCrash handler]
#7  0xb7e0bea0 in typeinfo for KIPI::Interface () from /usr/lib/libkipi.so.0
*****

the new info is in the last line more precise than in the old one
(see comment #3)

Comment 15 Renchi Raju 2005-03-06 17:13:16 UTC
re: comment #14
sounds like you have rather buggy packages installed. i can't pinpoint exactly which package is causing the problem. and no, these are not reproducible by any of us. if its possible, can you compile these packages from source and see if it still crashes.
Comment 16 Renchi Raju 2005-03-29 02:40:32 UTC
if i don't hear any feedback from you, i will have to close this report. you can also try with gwenview (with kipi support) and see if the problem is identifiable there.
Comment 17 laurent combe 2005-04-03 11:10:40 UTC
thanks for your help

you can close the bug
as i cannot give more detail

i'm waiting the next version of digikam to see my issue disappear

thanks again
Comment 18 Joern Ahrens 2005-04-03 11:36:54 UTC
Sorry, it isn't reproducable for any of us.
Comment 19 caulier.gilles 2021-05-09 13:45:50 UTC
Not reproducible with digiKam 7.3.0 and Exiv2 0.27.4