From 21c97ee6764339a7020427c3f481800caacc475a Mon Sep 17 00:00:00 2001
From: Theodoros Katzalis <thodkatz@gmail.com>
Date: Sat, 9 Mar 2019 01:14:55 +0200
Subject: [PATCH] Update utcTime. All tests passed

---
 src/Helpers/TimeHelper.cpp | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/Helpers/TimeHelper.cpp b/src/Helpers/TimeHelper.cpp
index c7ed622e..da52cb40 100644
--- a/src/Helpers/TimeHelper.cpp
+++ b/src/Helpers/TimeHelper.cpp
@@ -40,8 +40,8 @@ struct TimeAndDate TimeHelper::utcTime(uint32_t seconds) {
 
 	// calculate years
 	while (seconds >= (IsLeapYear(TimeInfo.year) ? 366 : 365) * SecondsPerDay) {
-		TimeInfo.year++;
 		seconds -= (IsLeapYear(TimeInfo.year) ? 366 : 365) * SecondsPerDay;
+		TimeInfo.year++;
 	}
 
 	// calculate months
@@ -50,6 +50,16 @@ struct TimeAndDate TimeHelper::utcTime(uint32_t seconds) {
 		TimeInfo.month++;
 		seconds -= (DaysOfMonth[i] * SecondsPerDay);
 		i++;
+		if (i == 1 && IsLeapYear(TimeInfo.year)) {
+			if (seconds <= (28 * SecondsPerDay)) {
+				break;
+			} else {
+				TimeInfo.month++;
+				seconds -= 29 * SecondsPerDay;
+				i++;
+			}
+
+		}
 	}
 
 	// calculate days
-- 
GitLab