Skip site navigation (1) Skip section navigation (2)

Re: pgsql: Explicitly bind gettext() to the UTF8 locale when in use.

From: "Hiroshi Saito" <z-saito(at)guitar(dot)ocn(dot)ne(dot)jp>
To: "Hiroshi Inoue" <inoue(at)tpf(dot)co(dot)jp>, <mha(at)postgresql(dot)org>
Cc: <pgsql-committers(at)postgresql(dot)org>, "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: pgsql: Explicitly bind gettext() to the UTF8 locale when in use.
Date: 2008-11-24 07:17:40
Message-ID: E4D091955F7743BF900606C70E5CABA2@HIRO57887DE653 (view raw or flat)
Thread:
Lists: pgsql-committerspgsql-hackers
Hi.

It was comfortable in my environment. Then, as for me, to be contained
in the next release is desire.

BTW, I was wondering that it did not look at a problem in any countries
other than Japan. Probably, the environment with the runs locale which
can't be specified to be SERVER_ENCODING will be required.

Regards,
Hiroshi Saito

----- Original Message ----- 
From: "Hiroshi Inoue" <inoue(at)tpf(dot)co(dot)jp>


> Hi Magnus and all,
>
> Magnus Hagander wrote:
>> Log Message:
>> -----------
>> Explicitly bind gettext() to the  UTF8 locale when in use.
>> This is required on Windows due to the special locale
>> handling for UTF8 that doesn't change the full environment.
>
> Thanks to this change UTF-8 case was solved but Japanese users
> are still unhappy with Windows databases with EUC_JP encoding.
> Shift_JIS which is a Japanese encoding under Windows doesn't
> match any server encoding and causes a crash with the use of
> gettext. So Saito-san removed ja message catalog just before
> the 8.3 release.
>
> Attached is a simple patch to avoid the crash and enable the
> use of Japanese message catalog.
> Please apply the patch if there's no problem.
>
> regards,
> Hiroshi Inoue
>
>> Fixes crash with translated error messages per bugs 4180
>> and 4196.
>>
>> Tom Lane
>>
>> Modified Files:
>> --------------
>>     pgsql/src/backend/utils/mb:
>>         mbutils.c (r1.70 -> r1.71)
>> 
>> (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/mb/mbutils.c?r1=1.70&r2=1.71)
>
>
>


--------------------------------------------------------------------------------


> *** mbutils.c.orig Sun Nov 23 08:42:57 2008
> --- mbutils.c Sun Nov 23 13:52:41 2008
> ***************
> *** 825,830 ****
> --- 825,832 ----
>  void
>  SetDatabaseEncoding(int encoding)
>  {
> + const char *target_codeset = NULL;
> +
>  if (!PG_VALID_BE_ENCODING(encoding))
>  elog(ERROR, "invalid database encoding: %d", encoding);
>
> ***************
> *** 846,852 ****
>  */
>  #ifdef ENABLE_NLS
>  if (encoding == PG_UTF8)
> ! if (bind_textdomain_codeset("postgres", "UTF-8") == NULL)
>  elog(LOG, "bind_textdomain_codeset failed");
>  #endif
>  }
> --- 848,860 ----
>  */
>  #ifdef ENABLE_NLS
>  if (encoding == PG_UTF8)
> ! target_codeset = "UTF-8";
> ! #ifdef WIN32
> ! else if (encoding == PG_EUC_JP)
> ! target_codeset = "EUC_JP";
> ! #endif /* WIN32 */
> ! if (NULL != target_codeset)
> ! if (bind_textdomain_codeset("postgres", target_codeset) == NULL)
>  elog(LOG, "bind_textdomain_codeset failed");
>  #endif
>  }
>


--------------------------------------------------------------------------------


>
> -- 
> Sent via pgsql-committers mailing list (pgsql-committers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-committers
> 


In response to

pgsql-hackers by date

Next:From: Heikki LinnakangasDate: 2008-11-24 07:31:22
Subject: Re: Visibility map, partial vacuums
Previous:From: Hiroshi SaitoDate: 2008-11-24 07:02:08
Subject: Re: [PATCHES] Solve a problem of LC_TIME of windows.

pgsql-committers by date

Next:From: Peter EisentrautDate: 2008-11-24 08:46:04
Subject: pgsql: CLUSTER VERBOSE and corresponding clusterdb --verbose option Jim
Previous:From: User FxjrDate: 2008-11-24 03:08:57
Subject: npgsql - Npgsql: Fixed problem when calling functions with inout or

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group