mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-12 18:34:36 +08:00
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.
This commit is contained in:
parent
13fdd0e4d1
commit
eec501c4f7
@ -8,7 +8,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* 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')
|
if (*cp != '\0')
|
||||||
return DTERR_BAD_FORMAT;
|
return DTERR_BAD_FORMAT;
|
||||||
type = DTK_MONTH;
|
type = DTK_MONTH;
|
||||||
if (val < 0)
|
if (*field[i] == '-')
|
||||||
val2 = -val2;
|
val2 = -val2;
|
||||||
val = val * MONTHS_PER_YEAR + val2;
|
val = val * MONTHS_PER_YEAR + val2;
|
||||||
fval = 0;
|
fval = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user