Version: (using KDE KDE 3.5.4) Installed from: Mandriva RPMs Steps to reproduce: 1. burn a CD/DVD with the Volume ID "testтестäöü߀ДЖ" (I used k3b 0.12.17) 2. go to "media:/" in konqueror Result: the CD/DVD is labeled: testÑ_еÑ_Ñ_äö I use UTF-8 locales.
Could you please attach what lshal says about this cd when it's in the drive? This way I'd get a better picture on where in the stack the decoding it broken.
lshal says "volume.label = 'testÑ_еÑ_Ñ_äö' (string)" Do you need any other lines of the output?
No, you provided me exactly the information I wanted. :-) So, we have two possibilities here: 1) K3B broke your label when recording the CD 2) HAL don't read the label correctly In both cases I can't do anything about it since I'm simply receiving the information from HAL. That's why I will reassign this bug to K3B just so that its maintainer can check it's not on his side, if he confirms that he's a good citizen regarding utf8 labels then I strongly advise him to resolve your bug as INVALID and ask you to open one in freedesktop.org bugzilla on HAL.
I think the problem simply is that iso does not use utf8 but some restricted version of ascii and K3b does not check that. So the bug is indeed in K3b. I need to implement a check on the volume desc fields. (One could argue that mkisofs should do the same...) This is a duplicate of some other bug but I cannot remember the number at the moment.
The CD/DVD had been written with Rock Ridge and Joliet. Isn't Joliet using UTF16BE?
yes, but mkisofs does not allow different volume ids for the iso and joliet descriptors. Thus, we have to restrict ourselves.
SVN commit 607122 by trueg: * New "further actions" button in the welcome widget. * Restrict the charset for volume descriptor fields to latin1. This is not the actual standard but should work almost everywhere. The standard would be too restricted for most users (only upper case) * Fixed a crash recently introduced. BUGS: 137740, 106840, 133860, 93614 M +20 -9 libk3b/projects/datacd/k3bisoimager.cpp M +1 -0 libk3b/tools/k3bdirsizejob.cpp M +36 -17 libk3b/tools/k3blistview.cpp M +6 -5 libk3b/tools/k3blistview.h M +25 -2 libk3b/tools/k3bvalidators.cpp M +13 -2 libk3b/tools/k3bvalidators.h M +34 -0 src/k3bfiletreeview.cpp M +4 -0 src/k3bfiletreeview.h M +16 -4 src/k3bflatbutton.cpp M +2 -0 src/k3bflatbutton.h M +82 -55 src/k3bwelcomewidget.cpp M +6 -1 src/k3bwelcomewidget.h M +1 -1 src/main.cpp M +0 -3 src/projects/k3baudiotrackview.cpp M +9 -0 src/projects/k3baudiotrackviewitem.cpp M +1 -0 src/projects/k3baudiotrackviewitem.h M +3 -2 src/projects/k3bdatadirtreeview.cpp M +0 -2 src/projects/k3bdatafileview.cpp M +2 -0 src/projects/k3bdataview.cpp M +10 -0 src/projects/k3bdataviewitem.cpp M +1 -1 src/projects/k3bdataviewitem.h M +1 -2 src/projects/k3bdatavolumedescwidget.cpp