diff --git a/src/sbbs3/websrvr.c b/src/sbbs3/websrvr.c index b229a8e0925ef12ba3b1e2762636a49922830439..160801feea5653360e3c6b17956aa61ce3ccc253 100644 --- a/src/sbbs3/websrvr.c +++ b/src/sbbs3/websrvr.c @@ -428,8 +428,8 @@ time_gm(struct tm *tm) /* save value in case *tm is overwritten by gmtime() */ sec = tm->tm_sec; - tm2 = gmtime(&t); - if ((t2 = sub_mkgmt(tm2)) == (time_t) -1) + tm2 = gmtime(&t); /* why not use gmtime_r instead? */ + if (tm2 == NULL || (t2 = sub_mkgmt(tm2)) == (time_t) -1) return (time_t) -1; if (t2 < t || tm2->tm_sec != sec) {