postgres.git / summary / log / commit / refs

commit    e829385f5633c38d8a7baa3de31df537da1fe93a
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Sun May 07 16:33:12 2017 +0000

    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.


src/timezone/strftime.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/timezone/strftime.c b/src/timezone/strftime.c index ab8f60e9c8f..2f32cf8bdb7 100644 --- a/src/timezone/strftime.c +++ b/src/timezone/strftime.c @@ -459,7 +459,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) { [parent: 62a2883129ab]