summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorMaganty Rushyendra <mrushyendra@yahoo.com.sg>2020-06-29 14:27:10 +0800
committerMaganty Rushyendra <mrushyendra@yahoo.com.sg>2020-06-29 14:27:10 +0800
commitaae5f246ff3b29a6a60d438d71523c8cc139be1b (patch)
treeea797c420401da5468326e0146274ef8945bfb80 /core
parent481151be09108a30002ae0a9df118eeddd3987be (diff)
Fix weekday calculation in get_datetime_from_unix_time for negative times
Fix calculation for negative times to ensure Sundays are wrapped around to '0' instead of '7', making it consistent with the output for positive times.
Diffstat (limited to 'core')
-rw-r--r--core/bind/core_bind.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/core/bind/core_bind.cpp b/core/bind/core_bind.cpp
index 267391c4d6..cb82dc7f8f 100644
--- a/core/bind/core_bind.cpp
+++ b/core/bind/core_bind.cpp
@@ -454,7 +454,7 @@ Dictionary _OS::get_datetime_from_unix_time(int64_t unix_time_val) const {
} else {
dayno = (unix_time_val - SECS_DAY + 1) / SECS_DAY;
dayclock = unix_time_val - dayno * SECS_DAY;
- date.weekday = static_cast<OS::Weekday>((dayno - 3) % 7 + 7);
+ date.weekday = static_cast<OS::Weekday>(((dayno % 7) + 11) % 7);
do {
year--;
dayno += YEARSIZE(year);