aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2008-11-08 20:51:49 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2008-11-08 20:51:49 +0000
commiteec501c4f773add9f30789efc28f8ce3bf2e5de9 (patch)
treed41292462f877f359869f728a31601b0d29dd238 /src
parent13fdd0e4d1773e91bab1b3f255ef432409505b47 (diff)
downloadpostgresql-eec501c4f773add9f30789efc28f8ce3bf2e5de9.tar.gz
postgresql-eec501c4f773add9f30789efc28f8ce3bf2e5de9.zip
Fix recently added code for SQL years-months interval syntax so that
it behaves correctly for a leading minus sign, zero year value, and nonzero month value. Per discussion with Ron Mayer.
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/adt/datetime.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/utils/adt/datetime.c b/src/backend/utils/adt/datetime.c
index 0ec29c7cb8a..8efe2b22f2c 100644
--- a/src/backend/utils/adt/datetime.c
+++ b/src/backend/utils/adt/datetime.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/adt/datetime.c,v 1.195 2008/10/02 13:47:38 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/datetime.c,v 1.196 2008/11/08 20:51:49 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -2863,7 +2863,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
if (*cp != '\0')
return DTERR_BAD_FORMAT;
type = DTK_MONTH;
- if (val < 0)
+ if (*field[i] == '-')
val2 = -val2;
val = val * MONTHS_PER_YEAR + val2;
fval = 0;