From d1d3f4d0150d3b3d96b9353d93c676abcf4f074b Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Tue, 13 Feb 2007 02:00:55 +0000
Subject: [PATCH] Add comment that to_char() for broken glibc pt_BR might cause
 a problem.

---
 src/backend/utils/adt/formatting.c | 28 ++++++++++++++++------------
 1 file changed, 16 insertions(+), 12 deletions(-)

diff --git a/src/backend/utils/adt/formatting.c b/src/backend/utils/adt/formatting.c
index 37e1ccd9a9c..74e2db6082d 100644
--- a/src/backend/utils/adt/formatting.c
+++ b/src/backend/utils/adt/formatting.c
@@ -1,7 +1,7 @@
 /* -----------------------------------------------------------------------
  * formatting.c
  *
- * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.122 2007/02/09 04:17:58 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.123 2007/02/13 02:00:55 momjian Exp $
  *
  *
  *	 Portions Copyright (c) 1999-2007, PostgreSQL Global Development Group
@@ -3834,14 +3834,6 @@ NUM_prepare_locale(NUMProc *Np)
 		else
 			Np->L_positive_sign = "+";
 
-		/*
-		 * Number thousands separator
-		 */
-		if (lconv->thousands_sep && *lconv->thousands_sep)
-			Np->L_thousands_sep = lconv->thousands_sep;
-		else
-			Np->L_thousands_sep = ",";
-
 		/*
 		 * Number decimal point
 		 */
@@ -3850,6 +3842,21 @@ NUM_prepare_locale(NUMProc *Np)
 		else
 			Np->decimal = ".";
 
+		if (!IS_LDECIMAL(Np->Num))
+			Np->decimal = ".";
+
+		/*
+		 * Number thousands separator
+		 * 
+		 * Some locales (e.g. broken glibc pt_BR), have a comma for
+		 * decimal, but "" for thousands_sep, so we might make the
+		 * thousands_sep comma too.  2007-02-12
+		 */
+		if (lconv->thousands_sep && *lconv->thousands_sep)
+			Np->L_thousands_sep = lconv->thousands_sep;
+		else
+			Np->L_thousands_sep = ",";
+
 		/*
 		 * Currency symbol
 		 */
@@ -3857,9 +3864,6 @@ NUM_prepare_locale(NUMProc *Np)
 			Np->L_currency_symbol = lconv->currency_symbol;
 		else
 			Np->L_currency_symbol = " ";
-
-		if (!IS_LDECIMAL(Np->Num))
-			Np->decimal = ".";
 	}
 	else
 	{
-- 
GitLab