Mike Gran <spk...@yahoo.com> writes:

> Yeah.  I know it is a poor solution.  I just wanted to throw something
> out there to explain the problem.  

In the meantime, we can still extend ‘scm_t_locale’ in the
‘USE_GNU_LOCALE_API’ case:

  typedef struct
  {
    locale_t   locale;
    const char language[3];
  } scm_t_locale;

Then ‘make-locale’ can somehow determine the locale name associated with
‘LC_CTYPE’; the language two-letter code can be extracted from the
locale name using the same algorithm as ‘uc_locale_language ()’, and
stored in ‘c_locale->language’.

In the ‘!USE_GNU_LOCALE_API’ there’s no problem because we already have
to acquire ‘scm_i_locale_mutex’ and setlocale(3).

I suggest that we wait for Bruno’s feedback on this and eventually take
this route (before 1.9.4!) if there’s no easy fix for libunistring.

Thanks,
Ludo’.



Reply via email to