diff options
author | Bruce Momjian <bruce@momjian.us> | 2007-11-24 16:18:48 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2007-11-24 16:18:48 +0000 |
commit | 8a52d0c94d240cf386966fa8207a75a52fd82dfb (patch) | |
tree | 04272faf13535554e0e54c18a9572e90eae3f065 /src | |
parent | 5f128d5fe8705dddcb45081b79e0d642c9683b50 (diff) | |
download | postgresql-8a52d0c94d240cf386966fa8207a75a52fd82dfb.tar.gz postgresql-8a52d0c94d240cf386966fa8207a75a52fd82dfb.zip |
Clarify how MONEY trims off trailing thousands separator.
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/utils/adt/cash.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/backend/utils/adt/cash.c b/src/backend/utils/adt/cash.c index a7c6225f8ab..df5d7bf8629 100644 --- a/src/backend/utils/adt/cash.c +++ b/src/backend/utils/adt/cash.c @@ -13,7 +13,7 @@ * this version handles 64 bit numbers and so can hold values up to * $92,233,720,368,547,758.07. * - * $PostgreSQL: pgsql/src/backend/utils/adt/cash.c,v 1.76 2007/11/24 15:28:02 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/cash.c,v 1.77 2007/11/24 16:18:48 momjian Exp $ */ #include "postgres.h" @@ -337,9 +337,13 @@ cash_out(PG_FUNCTION_ARGS) strncpy((buf + count - strlen(csymbol) + 1), csymbol, strlen(csymbol)); count -= strlen(csymbol) - 1; - /* XXX What does this do? It seems to duplicate the last character. */ + /* + * If points == 0 and the number of digits % mon_group == 0, + * the code above adds a trailing ssymbol on the far right, + * so remove it. + */ if (buf[LAST_DIGIT] == ssymbol) - buf[LAST_DIGIT] = buf[LAST_PAREN]; + buf[LAST_DIGIT] = '\0'; /* see if we need to signify negative amount */ if (minus) |