소스 검색

Fix timezone month being reported incorrectly to games (#861)

Nintendo actually uses range from 1 to 12 for months (when original timezone code manage 0-11)
Thog 6 년 전
부모
커밋
f617fb542a
1개의 변경된 파일4개의 추가작업 그리고 2개의 파일을 삭제
  1. 4 2
      Ryujinx.HLE/HOS/Services/Time/TimeZone/TimeZone.cs

+ 4 - 2
Ryujinx.HLE/HOS/Services/Time/TimeZone/TimeZone.cs

@@ -1707,7 +1707,8 @@ namespace Ryujinx.HLE.HOS.Services.Time.TimeZone
                 Time = new CalendarTime()
                 {
                     Year   = (short)calendarTime.Year,
-                    Month  = calendarTime.Month,
+                    // NOTE: Nintendo's month range is 1-12, internal range is 0-11.
+                    Month = (sbyte)(calendarTime.Month + 1),
                     Day    = calendarTime.Day,
                     Hour   = calendarTime.Hour,
                     Minute = calendarTime.Minute,
@@ -1724,7 +1725,8 @@ namespace Ryujinx.HLE.HOS.Services.Time.TimeZone
             CalendarTimeInternal calendarTimeInternal = new CalendarTimeInternal()
             {
                 Year   = calendarTime.Year,
-                Month  = calendarTime.Month,
+                // NOTE: Nintendo's month range is 1-12, internal range is 0-11.
+                Month  = (sbyte)(calendarTime.Month - 1),
                 Day    = calendarTime.Day,
                 Hour   = calendarTime.Hour,
                 Minute = calendarTime.Minute,