Bug#564593: qjackctl: Uses LC_NUMERIC to set interface language
Adrian Knoth
adi at drcomp.erfurt.thur.de
Mon Jan 11 15:06:10 UTC 2010
On Sun, Jan 10, 2010 at 04:21:48PM +0100, Harald Braumann wrote:
> Package: qjackctl
> Version: 0.3.5-1
> Hi,
Hi!
> qjackctl uses LC_NUMERIC to set the interface language, instead
> of LC_MESSAGES.
>
> Here are my locale settings:
>
> $ locale
> LANG=POSIX
> LANGUAGE=POSIX
> LC_CTYPE=de_AT.utf8
> LC_NUMERIC=de_AT.utf8
> LC_TIME=de_AT.utf8
> LC_COLLATE=de_AT.utf8
> LC_MONETARY=de_AT.utf8
> LC_MESSAGES=POSIX
> LC_PAPER=de_AT.utf8
> LC_NAME=de_AT.utf8
> LC_ADDRESS=de_AT.utf8
> LC_TELEPHONE=de_AT.utf8
> LC_MEASUREMENT=de_AT.utf8
> LC_IDENTIFICATION="POSIX"
> LC_ALL=
>
> The interface language should be English, as LC_MESSAGES is set
> to POSIX, but it uses German. LC_MESSAGES has no influence
> on the interface language. Instead it is controlled by
> LC_NUMERIC, which is quite stupid.
I'm not quite sure if this is really qtractor's fault. If you set LANG=C
instead of POSIX, it works.
On the other hand, "C" and "POSIX" should behave the same:
http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap07.html#tag_07_02
Current qtractor code:
if (loc.language() != QLocale::C) {
And when I check QT's QLocale class, I only see QLocale::C, no
QLocale::POSIX:
http://doc.trolltech.com/4.6-snapshot/qlocale.html#Language-enum
So I see different options:
- you change LANG from POSIX to C
- TrollTech adds POSIX to their QLocale class
- qtractor manually checks for the POSIX string in LC_whatever
I guess the last option is probably the worst, while the first is the
least complex one.
If not special-cased, all QT based apps would hit this bug. I don't know
if more packages don't honor POSIX==C in the LANG variable, but you
probably do. ;)
Cheerio
--
mail: adi at thur.de http://adi.thur.de PGP/GPG: key via keyserver
More information about the pkg-multimedia-maintainers
mailing list