Guard against null t->tm_zone in strftime.c.

The upstream IANA code does not guard against null TM_ZONE pointers in this
function, but in our code there is such a check in the other pre-existing
use of t->tm_zone.  We do have some places that set pg_tm.tm_zone to NULL.
I'm not entirely sure it's possible to reach strftime with such a value,
but I'm not sure it isn't either, so be safe.

Per Coverity complaint.
This commit is contained in:
Tom Lane 2017-05-07 12:33:12 -04:00
parent d4e59c5521
commit a54d5875fe
1 changed files with 2 additions and 1 deletions

View File

@ -458,7 +458,8 @@ _fmt(const char *format, const struct pg_tm * t, char *pt, const char *ptlim,
negative = diff < 0;
if (diff == 0)
{
negative = t->tm_zone[0] == '-';
if (t->tm_zone != NULL)
negative = t->tm_zone[0] == '-';
}
if (negative)
{