Consolidate several near-identical uses of mktime() into a single
Tom Lane <tgl@sss.pgh.pa.us>
Consolidate several near-identical uses of mktime() into a single routine DetermineLocalTimeZone(). In that routine, be more wary of broken mktime() implementations than the original code was: don't allow mktime to change the already-set y/m/d/h/m/s information, and don't use tm_gmtoff if mktime failed. Possibly this will resolve some of the complaints we've been hearing from users of Middle Eastern timezones on RedHat.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/utils/adt/datetime.c | modified | +61 −37 |
| src/backend/utils/adt/formatting.c | modified | +2 −32 |
| src/backend/utils/adt/timestamp.c | modified | +3 −52 |
| src/include/utils/datetime.h | modified | +3 −1 |