From b9f33830295a78f8c5bb82f6caa033445d35e56e Mon Sep 17 00:00:00 2001 From: antirez Date: Wed, 4 Jul 2018 13:35:15 +0200 Subject: [PATCH] Localtime: fix timezone adjustment. --- src/localtime.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/localtime.c b/src/localtime.c index d4090e63c..536cb69e8 100644 --- a/src/localtime.c +++ b/src/localtime.c @@ -56,7 +56,8 @@ void nolocks_localtime(struct tm *tmp, time_t t, time_t tz, int dst) { const time_t secs_hour = 3600; const time_t secs_day = 3600*24; - t += tz; /* Adjust for timezone. */ + t -= tz; /* Adjust for timezone. */ + t += 3600+dst; /* Adjust for daylight time. */ time_t days = t / secs_day; /* Days passed since epoch. */ time_t seconds = t % secs_day; /* Remaining seconds. */