Prevent overflow when using 32 bit minutes

* Fixes #908
This commit is contained in:
Howard Hinnant
2026-03-26 21:58:44 -04:00
parent 45d45413ab
commit 1a70f8c8a8
+1 -1
View File
@@ -8047,7 +8047,7 @@ from_stream(std::basic_istream<CharT, Traits>& is, const CharT* fmt,
{ {
if (offset_local != std::chrono::minutes::min()) if (offset_local != std::chrono::minutes::min())
{ {
tp = round_i<Duration>(sys_days(fds.ymd) - offset_local + fds.tod.to_duration()); tp = round_i<Duration>(sys_days(fds.ymd) + fds.tod.to_duration() - offset_local);
if (offset != nullptr) if (offset != nullptr)
*offset = offset_local; *offset = offset_local;
} }