diff options
author | Greg Stark <stark@mit.edu> | 2015-09-06 02:04:37 +0100 |
---|---|---|
committer | Greg Stark <stark@mit.edu> | 2015-09-06 03:35:56 +0100 |
commit | 258ee1b635e43a37e901fd5f62bdd5f1087d65a5 (patch) | |
tree | 5f02ec49bed96b1178f9e598d082910e0d733e1a /src/backend/utils/adt/datetime.c | |
parent | 9270d8db9a1cd6465e21215e6451b552995fcb08 (diff) | |
download | postgresql-258ee1b635e43a37e901fd5f62bdd5f1087d65a5.tar.gz postgresql-258ee1b635e43a37e901fd5f62bdd5f1087d65a5.zip |
Move DTK_ISODOW DTK_DOW and DTK_DOY to be type UNITS rather than
RESERV. RESERV is meant for tokens like "now" and having them in that
category throws errors like these when used as an input date:
stark=# SELECT 'doy'::timestamptz;
ERROR: unexpected dtype 33 while parsing timestamptz "doy"
LINE 1: SELECT 'doy'::timestamptz;
^
stark=# SELECT 'dow'::timestamptz;
ERROR: unexpected dtype 32 while parsing timestamptz "dow"
LINE 1: SELECT 'dow'::timestamptz;
^
Found by LLVM's Libfuzzer
Diffstat (limited to 'src/backend/utils/adt/datetime.c')
-rw-r--r-- | src/backend/utils/adt/datetime.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/utils/adt/datetime.c b/src/backend/utils/adt/datetime.c index 2a44b6e5037..926358e6c98 100644 --- a/src/backend/utils/adt/datetime.c +++ b/src/backend/utils/adt/datetime.c @@ -103,8 +103,8 @@ static const datetkn datetktbl[] = { {"d", UNITS, DTK_DAY}, /* "day of month" for ISO input */ {"dec", MONTH, 12}, {"december", MONTH, 12}, - {"dow", RESERV, DTK_DOW}, /* day of week */ - {"doy", RESERV, DTK_DOY}, /* day of year */ + {"dow", UNITS, DTK_DOW}, /* day of week */ + {"doy", UNITS, DTK_DOY}, /* day of year */ {"dst", DTZMOD, SECS_PER_HOUR}, {EPOCH, RESERV, DTK_EPOCH}, /* "epoch" reserved for system epoch time */ {"feb", MONTH, 2}, @@ -114,7 +114,7 @@ static const datetkn datetktbl[] = { {"h", UNITS, DTK_HOUR}, /* "hour" */ {LATE, RESERV, DTK_LATE}, /* "infinity" reserved for "late time" */ {INVALID, RESERV, DTK_INVALID}, /* "invalid" reserved for bad time */ - {"isodow", RESERV, DTK_ISODOW}, /* ISO day of week, Sunday == 7 */ + {"isodow", UNITS, DTK_ISODOW}, /* ISO day of week, Sunday == 7 */ {"isoyear", UNITS, DTK_ISOYEAR}, /* year in terms of the ISO week date */ {"j", UNITS, DTK_JULIAN}, {"jan", MONTH, 1}, |