From 905defb5344b2caba4938196a9a281d35a26d8ee Mon Sep 17 00:00:00 2001 From: blueloveTH Date: Mon, 30 Oct 2023 23:55:06 +0800 Subject: [PATCH] fix a bug of datetime and localtime --- python/datetime.py | 5 ++++- src/pocketpy.cpp | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/python/datetime.py b/python/datetime.py index 9328e8a1..0847e728 100644 --- a/python/datetime.py +++ b/python/datetime.py @@ -94,7 +94,10 @@ class datetime(date): @staticmethod def now(): t = localtime() - return datetime(t.tm_year, t.tm_mon, t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec) + tm_sec = t.tm_sec + if tm_sec == 60: + tm_sec = 59 + return datetime(t.tm_year, t.tm_mon, t.tm_mday, t.tm_hour, t.tm_min, tm_sec) def __str__(self): return f"{self.year}-{self.month:02}-{self.day:02} {self.hour:02}:{self.minute:02}:{self.second:02}" diff --git a/src/pocketpy.cpp b/src/pocketpy.cpp index 131305aa..44f795f2 100644 --- a/src/pocketpy.cpp +++ b/src/pocketpy.cpp @@ -1434,7 +1434,7 @@ struct PyStructTime{ tm_mday = tm->tm_mday; tm_hour = tm->tm_hour; tm_min = tm->tm_min; - tm_sec = tm->tm_sec + 1; + tm_sec = tm->tm_sec; tm_wday = (tm->tm_wday + 6) % 7; tm_yday = tm->tm_yday + 1; tm_isdst = tm->tm_isdst;