*/
if (lconv->decimal_point && *lconv->decimal_point)
Np->decimal = lconv->decimal_point;
-
else
Np->decimal = ".";
* 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
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 = ".";