|
8 | 8 | * |
9 | 9 | * |
10 | 10 | * IDENTIFICATION |
11 | | - * $PostgreSQL: pgsql/src/backend/utils/adt/date.c,v 1.150 2010/01/02 16:57:53 momjian Exp $ |
| 11 | + * $PostgreSQL: pgsql/src/backend/utils/adt/date.c,v 1.151 2010/02/18 04:31:16 itagaki Exp $ |
12 | 12 | * |
13 | 13 | *------------------------------------------------------------------------- |
14 | 14 | */ |
@@ -208,8 +208,10 @@ date_recv(PG_FUNCTION_ARGS) |
208 | 208 | result= (DateADT)pq_getmsgint(buf,sizeof(DateADT)); |
209 | 209 |
|
210 | 210 | /* Limit to the same range that date_in() accepts. */ |
211 | | -if (result<-POSTGRES_EPOCH_JDATE|| |
212 | | -result >=JULIAN_MAX-POSTGRES_EPOCH_JDATE) |
| 211 | +if (DATE_NOT_FINITE(result)) |
| 212 | +/* ok */ ; |
| 213 | +elseif (result<-POSTGRES_EPOCH_JDATE|| |
| 214 | +result >=JULIAN_MAX-POSTGRES_EPOCH_JDATE) |
213 | 215 | ereport(ERROR, |
214 | 216 | (errcode(ERRCODE_DATETIME_VALUE_OUT_OF_RANGE), |
215 | 217 | errmsg("date out of range"))); |
|