Re: [pgsql-hackers-win32] initdb problen - Mailing list pgsql-patches
From | Bruce Momjian |
---|---|
Subject | Re: [pgsql-hackers-win32] initdb problen |
Date | |
Msg-id | 200403151614.i2FGEOd09586@candle.pha.pa.us Whole thread Raw |
In response to | Re: [pgsql-hackers-win32] initdb problen (Andrew Dunstan <andrew@dunslane.net>) |
List | pgsql-patches |
Patch applied. Thanks. --------------------------------------------------------------------------- Andrew Dunstan wrote: > > > I believe that the attached patch may solve this setlocale() problem, > but I do not have a Windows box handy on which to test it. Can somebody > who does please try and let us know the results? > > thanks > > andrew > > > > Andrew Dunstan wrote: > > >the answer is very probably here: > >http://archives.postgresql.org/pgsql-hackers-win32/2003-10/msg00024.php > > > >I thought Bruce said he had this covered, but it hasn't been fixed. I > >will prepare a patch in the next day or so if someone else doesn't beat > >me to it. > > > >cheers > > > >andrew > > > >Korea PostgreSQL Users' Group wrote: > > > > > > > >>it works still problem. > >> > >>setlocale() function is not equivalent between unix and win32 > >> > >>plz check. > >> > >>multibyte text is not sorted. > >> > >> > >>----- Original Message ----- > >>From: "Claudio Natoli" <claudio.natoli@memetrics.com> > >>To: "'Korea PostgreSQL Users' Group'" <pgsql-kr@postgresql.or.kr>; <pgsql-hackers-win32@postgresql.org> > >>Sent: Friday, March 12, 2004 5:04 PM > >>Subject: RE: [pgsql-hackers-win32] initdb problen > >> > >> > >> > >> > >> > >> > >>>What if you instead try: > >>> > >>>initdb --locale=C > >>> > >>>Looks like "--no-locale" is not "equivalent to --locale=C", at least under > >>>win32. > >>> > >>>Cheers, > >>>Claudio > >>> > >>> > >>> > >>> > >>> > >>> > >>---------------------------(end of broadcast)--------------------------- > >>TIP 3: if posting/reading through Usenet, please send an appropriate > >> subscribe-nomail command to majordomo@postgresql.org so that your > >> message can get through to the mailing list cleanly > >> > >> > >> > >> > >> > > > > > >---------------------------(end of broadcast)--------------------------- > >TIP 3: if posting/reading through Usenet, please send an appropriate > > subscribe-nomail command to majordomo@postgresql.org so that your > > message can get through to the mailing list cleanly > > > > > > > > Index: src/backend/main/main.c > =================================================================== > RCS file: /projects/cvsroot/pgsql-server/src/backend/main/main.c,v > retrieving revision 1.75 > diff -c -r1.75 main.c > *** src/backend/main/main.c 5 Mar 2004 01:11:04 -0000 1.75 > --- src/backend/main/main.c 12 Mar 2004 16:27:13 -0000 > *************** > *** 74,79 **** > --- 74,83 ---- > #endif /* NOPRINTADE */ > #endif /* __alpha */ > > + #ifdef WIN32 > + char *env_locale; > + #endif > + > #if defined(NOFIXADE) || defined(NOPRINTADE) > > #if defined(ultrix4) > *************** > *** 143,150 **** > --- 147,176 ---- > * set later during GUC option processing, but we set it here to allow > * startup error messages to be localized. > */ > + > + #ifdef WIN32 > + /* > + * Windows uses codepages rather than the environment, so we work around > + * that by querying the environment explicitly first for LC_COLLATE > + * and LC_CTYPE. We have to do this because initdb passes those values > + * in the environment. If there is nothing there we fall back on the > + * codepage. > + */ > + > + if ((env_locale = getenv("LC_COLLATE")) != NULL) > + setlocale(LC_COLLATE,env_locale); > + else > + setlocale(LC_COLLATE, ""); > + > + if ((env_locale = getenv("LC_CTYPE")) != NULL) > + setlocale(LC_CTYPE,env_locale); > + else > + setlocale(LC_CTYPE, ""); > + #else > setlocale(LC_COLLATE, ""); > setlocale(LC_CTYPE, ""); > + #endif > + > #ifdef LC_MESSAGES > setlocale(LC_MESSAGES, ""); > #endif > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faqs/FAQ.html -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
pgsql-patches by date: