Patch attached and applied. Thanks.
---------------------------------------------------------------------------
Hiroshi Saito wrote:
> Hi.
>
> "William ZHANG" <uniware@zedware.org> wrote in message news:ea5fm1$2q6i$1@news.hub.org...
> > When I tried to compile pgsql-8.2devel with VS.Net 2005 and do regression
> > tests,
> > I found the problem. It's a bug inVS.Net 2005:
> > http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=99694
> >
>
> + /* http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=99694 */
> + #if _MSC_VER == 1400
> + {
> + char x[1];
> +
> + xfrmlen = strxfrm(x, val, 0);
> + }
> + #else
> xfrmlen = strxfrm(NULL, val, 0);
> + #endif
>
>
> Hmm, It seems to be the bug of very unpleasant Microsoft.:D
> I think that the following is desirable as an evasion measure to add.
>
> #if defined(_MSC_VER) && _MSC_VER == 1400
>
> To be sure, it was only VS2005.
>
> Regards,
> Hiroshi Saito
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
--
Bruce Momjian bruce@momjian.us
EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
Index: src/backend/utils/adt/selfuncs.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v
retrieving revision 1.210
diff -c -c -r1.210 selfuncs.c
*** src/backend/utils/adt/selfuncs.c 24 Jul 2006 01:19:48 -0000 1.210
--- src/backend/utils/adt/selfuncs.c 26 Jul 2006 17:13:26 -0000
***************
*** 2956,2962 ****
* == as you'd expect. Can't any of these people program their way
* out of a paper bag?
*/
! xfrmlen = strxfrm(NULL, val, 0);
xfrmstr = (char *) palloc(xfrmlen + 1);
xfrmlen2 = strxfrm(xfrmstr, val, xfrmlen + 1);
Assert(xfrmlen2 <= xfrmlen);
--- 2956,2970 ----
* == as you'd expect. Can't any of these people program their way
* out of a paper bag?
*/
! #if _MSC_VER == 1400 /* VS.Net 2005 */
! /* http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=99694 */
! {
! char x[1];
! xfrmlen = strxfrm(x, val, 0);
! }
! #else
! xfrmlen = strxfrm(NULL, val, 0);
! #endif
xfrmstr = (char *) palloc(xfrmlen + 1);
xfrmlen2 = strxfrm(xfrmstr, val, xfrmlen + 1);
Assert(xfrmlen2 <= xfrmlen);