summaryrefslogtreecommitdiff
path: root/src/timezone/pgtz.h
diff options
context:
space:
mode:
authorTom Lane2018-10-19 23:36:34 +0000
committerTom Lane2018-10-19 23:36:34 +0000
commit12bfb778ce688fc662a6cb35f6298734fcf4856f (patch)
tree63cc6cc5290ec5f8a5435c721632304a90a29436 /src/timezone/pgtz.h
parent13877d30f2ec93f6043937f76af207dcc614a4e7 (diff)
Sync our copy of the timezone library with IANA release tzcode2018f.
About half of this is purely cosmetic changes to reduce the diff between our code and theirs, like inserting "const" markers where they have them. The other half is tracking actual code changes in zic.c and localtime.c. I don't think any of these represent near-term compatibility hazards, but it seems best to stay up to date. I also fixed longstanding bugs in our code for producing the known_abbrevs.txt list, which by chance hadn't been exposed before, but which resulted in some garbage output after applying the upstream changes in zic.c. Notably, because upstream removed their old phony transitions at the Big Bang, it's now necessary to cope with TZif files containing no DST transition times at all.
Diffstat (limited to 'src/timezone/pgtz.h')
-rw-r--r--src/timezone/pgtz.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/timezone/pgtz.h b/src/timezone/pgtz.h
index 1e94d66d490..a07dced583e 100644
--- a/src/timezone/pgtz.h
+++ b/src/timezone/pgtz.h
@@ -49,10 +49,16 @@ struct state
pg_time_t ats[TZ_MAX_TIMES];
unsigned char types[TZ_MAX_TIMES];
struct ttinfo ttis[TZ_MAX_TYPES];
- char chars[BIGGEST(BIGGEST(TZ_MAX_CHARS + 1, 3 /* sizeof gmt */ ),
+ char chars[BIGGEST(BIGGEST(TZ_MAX_CHARS + 1, 4 /* sizeof gmt */ ),
(2 * (TZ_STRLEN_MAX + 1)))];
struct lsinfo lsis[TZ_MAX_LEAPS];
- int defaulttype; /* for early times or if no transitions */
+
+ /*
+ * The time type to use for early times or if no transitions. It is always
+ * zero for recent tzdb releases. It might be nonzero for data from tzdb
+ * 2018e or earlier.
+ */
+ int defaulttype;
};