Hi Mike,

"Michael Gran" <spk...@yahoo.com> writes:

> commit aafb5062b834dc468fa2acdec7eda12e389c5bca
> Author: Michael Gran <spk...@yahoo.com>
> Date:   Thu Sep 24 08:07:38 2009 -0700
>
>     Language-specific case-conversion doesn't honor locale
>     
>     Libunistring uses a function uc_locale_language to extract the
>     current language from the locale information.  It does this by calling
>     setlocale.  This makes incompatible with Guile functions that use the
>     locale_t thread-specific locale API, because the values returned by the
>     call to setlocale ignore the locale set by uselocale.
>     
>     As a workaround, this patch extracts the language from the locale_t
>     structure's __names field.

Unfortunately this is not an option because it’s way too fragile, and
will not compile non-GNU systems that implement this API (such as
Darwin, and any POSIX 2008 system).

How about reporting a bug against libunistring so that it uses
uselocale(3) instead of setlocale(3) to determine the current language
when uselocale(3) is available?

Furthermore, we could suggest that support for the ‘locale_t’ API would
be great.  :-)

Thanks,
Ludo’.


Reply via email to