aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2007-11-21 22:28:18 +0000
committerBruce Momjian <bruce@momjian.us>2007-11-21 22:28:18 +0000
commit3894e7cc55c059d83433aa33e6c286090d658206 (patch)
tree98879911d30527969ac982329ef5c087d666ea43
parent6f3149e4644f27f25e14717225b607eabfbff2e1 (diff)
downloadpostgresql-3894e7cc55c059d83433aa33e6c286090d658206.tar.gz
postgresql-3894e7cc55c059d83433aa33e6c286090d658206.zip
When setting default thousands separator when locale has "", use logic
so new thousands separator doesn't match decimal symbol.
-rw-r--r--src/backend/utils/adt/formatting.c10
-rw-r--r--src/bin/psql/print.c4
2 files changed, 7 insertions, 7 deletions
diff --git a/src/backend/utils/adt/formatting.c b/src/backend/utils/adt/formatting.c
index 9b738d5f1e6..7c6e300f4c2 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.133 2007/11/21 21:49:22 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.134 2007/11/21 22:28:18 momjian Exp $
*
*
* Portions Copyright (c) 1999-2007, PostgreSQL Global Development Group
@@ -3915,7 +3915,6 @@ NUM_prepare_locale(NUMProc *Np)
*/
if (lconv->decimal_point && *lconv->decimal_point)
Np->decimal = lconv->decimal_point;
-
else
Np->decimal = ".";
@@ -3926,13 +3925,14 @@ NUM_prepare_locale(NUMProc *Np)
* Number thousands separator
*
* Some locales (e.g. broken glibc pt_BR), have a comma for decimal,
- * but "" for thousands_sep, so we make the thousands_sep comma
- * too. 2007-02-12
+ * but "" for thousands_sep, so we set the thousands_sep too. 2007-02-12
*/
if (lconv->thousands_sep && *lconv->thousands_sep)
Np->L_thousands_sep = lconv->thousands_sep;
- else
+ else if (strcmp(Np->decimal, ",") != 0)
Np->L_thousands_sep = ",";
+ else
+ Np->L_thousands_sep = ".";
/*
* Currency symbol
diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c
index 46823ab3cc2..eafb8f6628a 100644
--- a/src/bin/psql/print.c
+++ b/src/bin/psql/print.c
@@ -3,7 +3,7 @@
*
* Copyright (c) 2000-2007, PostgreSQL Global Development Group
*
- * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.91 2007/01/05 22:19:49 momjian Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.92 2007/11/21 22:28:18 momjian Exp $
*
* Note: we include postgres.h not postgres_fe.h so that we can include
* catalog/pg_type.h, and thereby have access to INT4OID and similar macros.
@@ -2039,7 +2039,7 @@ setDecimalLocale(void)
grouping = "3"; /* most common */
if (*extlconv->thousands_sep)
thousands_sep = strdup(extlconv->thousands_sep);
- else if (*decimal_point != ',')
+ else if (strcmp(decimal_point, ",") != 0)
thousands_sep = ",";
else
thousands_sep = ".";