Bug 169764 - RAW file import lacks I18N support, no decoding
Summary: RAW file import lacks I18N support, no decoding
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Usability-i18n (show other bugs)
Version: 0.10.0
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-08-25 12:51 UTC by Gerhard Kulzer
Modified: 2021-12-30 15:50 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 7.5.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gerhard Kulzer 2008-08-25 12:51:46 UTC
Version:            (using KDE 4.1.0)
Compiler:          gcc 4.3 
OS:                Linux
Installed from:    Ubuntu Packages

The new rawimport as well as the direct RAW decoding cannot decode a file when it contains special characters (like German Umlauts). When i run the command /usr/lib/kde4/lib/libkdcraw6/kdcraw -c -v -4 -H 2 -a -q 3 -o 1 /home/gerhard/Fotos/Früher/Ins/crw_1481.crw|pnmtopng > test.png, no problems are encountered.

Error message in IE:
Cannot decode RAW image for crw_1481.crw (I18N_ARGUMENT_MISSING)

gdb trace:
...
digikam(31842): "/home/gerhard/Fotos/Früher/Ins/crw_1481.crw"  : RAW file identified
Running RAW decoding command: /usr/lib/kde4/lib/libkdcraw6/kdcraw -c -v -4 -h -H 0 -w -q 3 -o 1 /home/gerhard/Fotos/Früher/Ins/crw_1481.crw
RAW decoding StdErr: /home/gerhard/Fotos/Früher/Ins/crw_1481.crw: No such file or directory                                               

Style reset requested. 
digikam(31842): Testing location  1 "/home/gerhard/Fotos/Früher/Ins" "/home/gerhard/Fotos"
[New Thread 0xa8163b90 (LWP 31949)]                                                       
DateTime => Exif.Photo.DateTimeOriginal =>  QDateTime("Sun Apr 24 11:01:30 2005")         

digikam(31842): "/home/gerhard/Fotos/Früher/Ins/crw_1481.crw"  : RAW file identified
Running RAW decoding command: /usr/lib/kde4/lib/libkdcraw6/kdcraw -c -v -4 -h -H 0 -w -q 3 -o 1 /home/gerhard/Fotos/Früher/Ins/crw_1481.crw
RAW decoding StdErr: /home/gerhard/Fotos/Früher/Ins/crw_1481.crw: No such file or directory
Comment 1 caulier.gilles 2008-08-25 13:00:50 UTC
SOund like a problem in libkdcraw, especially KDcraw::startProcess() in line 910 :

args << QFile::encodeName(d->filePath);

Normally QFile::encodeName() must prevent this encoding problem:

http://doc.trolltech.com/4.4/qfile.html#encodeName

Perhaps there is a problem with UTF8 encoding here

Gilles Caulier
Comment 2 Gerhard Kulzer 2008-08-25 16:32:20 UTC
Gilles, since the encodeName produces a local8bit path,  shouldn't the process call in line 918 take that into account: instead of fromAscii:

fromLocal8Bit(DcrawBinary::path()), args);

I tried it, but no success, same error message!
Comment 3 Gerhard Kulzer 2008-08-26 06:28:41 UTC
Interesting reading is here:
http://www.mail-archive.com/dvbcut-user@lists.sourceforge.net/msg00638.html
Comment 4 Marcel Wiesweg 2008-12-01 19:30:15 UTC
I have tested this problem with current libkdcraw (based on libraw), and it worked nicely for me (folder and file name contained äöü éß)
One issue is that the libkdcraw version from KDE4.1 will no longer be used by digikam 0.10 and probably not updated any more, so you could test the version from trunk that is required for current svn digikam 0.10.

Gilles pointed out the libraw will still use QFile::encodeName if that is the culprit. I cannot test anymore with your version of libkdcraw because digikam wont work with it anymore - but we used dcraw for a long time on KDE3 without any problems, which might indicate a problem specific to your system.

Früher instead of Früher indicates that a UTF-8 code (two bytes for extended character) is interpreted as ASCII (two separate bytes).
Comment 5 caulier.gilles 2008-12-02 12:22:01 UTC
Same here. I have used non ascii characters with RAW path files, and it's work fine here.

I follow Marcel analyze here : for obscure reasons, this bug only touch libkdcraw based on dcraw and KProcess, not last version of libkdcraw based on libraw. This can be a weird issue with KProcess/QProcess.

So, I close this file now. Feel free to re-open if needs.

Gilles Caulier
Comment 6 caulier.gilles 2021-12-30 15:50:23 UTC
Fixed with works from bug #438701 for next 7.5.0 release

Gilles Caulier