Selaa lähdekoodia

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.
Maganty Rushyendra 5 vuotta sitten
vanhempi
commit
aae5f246ff
1 muutettua tiedostoa jossa 1 lisäystä ja 1 poistoa
  1. 1 1
      core/bind/core_bind.cpp

+ 1 - 1
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);