Fix up "Postgres-style" time interval representation when fields have
Thomas G. Lockhart <lockhart@fourpalms.org>
Fix up "Postgres-style" time interval representation when fields have mixed-signs. Previous effort left way too many minus signs, and was at least as broken as the one before that :( Clean up "ISO-style" time interval representation to omit zero fields if there is at least one non-zero field. Supress some leading plus signs when not necessary for clarity. Replace every #ifdef __CYGWIN__ block with a cleaner TIMEZONE_GLOBAL macro defined in datetime.h.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/utils/adt/datetime.c | modified | +30 −20 |
| src/backend/utils/adt/formatting.c | modified | +2 −8 |
| src/backend/utils/adt/nabstime.c | modified | +4 −12 |
| src/backend/utils/adt/timestamp.c | modified | +6 −21 |
| src/include/utils/datetime.h | modified | +6 −1 |
| src/test/regress/expected/interval.out | modified | +98 −98 |