aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/formatting.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2004-03-30 15:53:18 +0000
committerBruce Momjian <bruce@momjian.us>2004-03-30 15:53:18 +0000
commitfd071bd478f489c81208029265e1fef954a9b5fa (patch)
treea93be11ef80a963d363e7e158bb28078ad5414e5 /src/backend/utils/adt/formatting.c
parentf2c064afcbfad4999d7e9ccb644a8aa99463a1ac (diff)
downloadpostgresql-fd071bd478f489c81208029265e1fef954a9b5fa.tar.gz
postgresql-fd071bd478f489c81208029265e1fef954a9b5fa.zip
Fix to_char for 1 BC. Previously it returned 1 AD.
Fix to_char(year) for BC dates. Previously it returned one less than the current year. Add documentation mentioning that there is no 0 AD.
Diffstat (limited to 'src/backend/utils/adt/formatting.c')
-rw-r--r--src/backend/utils/adt/formatting.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/backend/utils/adt/formatting.c b/src/backend/utils/adt/formatting.c
index 25db1b0f5d3..3393a0ac4ce 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.72 2004/01/07 18:56:28 neilc Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.73 2004/03/30 15:53:18 momjian Exp $
*
*
* Portions Copyright (c) 1999-2003, PostgreSQL Global Development Group
@@ -169,7 +169,7 @@ static char *months_full[] = {
* AC / DC
* ----------
*/
-#define YEAR_ABS(_y) (_y < 0 ? -(_y -1) : _y)
+#define YEAR_ABS(_y) (_y <= 0 ? -(_y -1) : _y)
#define BC_STR_ORIG " BC"
#define A_D_STR "A.D."
@@ -2119,7 +2119,7 @@ dch_date(int arg, char *inout, int suf, int flag, FormatNode *node, void *data)
case DCH_B_C:
if (flag == TO_CHAR)
{
- strcpy(inout, (tm->tm_year < 0 ? B_C_STR : A_D_STR));
+ strcpy(inout, (tm->tm_year <= 0 ? B_C_STR : A_D_STR));
return 3;
}
@@ -2134,7 +2134,7 @@ dch_date(int arg, char *inout, int suf, int flag, FormatNode *node, void *data)
case DCH_BC:
if (flag == TO_CHAR)
{
- strcpy(inout, (tm->tm_year < 0 ? BC_STR : AD_STR));
+ strcpy(inout, (tm->tm_year <= 0 ? BC_STR : AD_STR));
return 1;
}
@@ -2149,7 +2149,7 @@ dch_date(int arg, char *inout, int suf, int flag, FormatNode *node, void *data)
case DCH_b_c:
if (flag == TO_CHAR)
{
- strcpy(inout, (tm->tm_year < 0 ? b_c_STR : a_d_STR));
+ strcpy(inout, (tm->tm_year <= 0 ? b_c_STR : a_d_STR));
return 3;
}
@@ -2164,7 +2164,7 @@ dch_date(int arg, char *inout, int suf, int flag, FormatNode *node, void *data)
case DCH_bc:
if (flag == TO_CHAR)
{
- strcpy(inout, (tm->tm_year < 0 ? bc_STR : ad_STR));
+ strcpy(inout, (tm->tm_year <= 0 ? bc_STR : ad_STR));
return 1;
}