File tree Expand file tree Collapse file tree 1 file changed +10
-2
lines changed Expand file tree Collapse file tree 1 file changed +10
-2
lines changed Original file line number Diff line number Diff line change @@ -851,8 +851,12 @@ uint32_t STM32RTC::getEpoch(void)
851
851
syncTime ();
852
852
853
853
tm.tm_isdst = -1 ;
854
+ /*
855
+ * mktime ignores the values supplied by the caller in the
856
+ * tm_wday and tm_yday fields
857
+ */
854
858
tm.tm_yday = 0 ;
855
- tm.tm_wday = _wday - 1 ;
859
+ tm.tm_wday = 0 ;
856
860
tm.tm_year = _year + EPOCH_TIME_YEAR_OFF;
857
861
tm.tm_mon = _month - 1 ;
858
862
tm.tm_mday = _day;
@@ -911,7 +915,11 @@ void STM32RTC::setEpoch(uint32_t ts)
911
915
_year = tmp->tm_year - EPOCH_TIME_YEAR_OFF;
912
916
_month = tmp->tm_mon + 1 ;
913
917
_day = tmp->tm_mday ;
914
- _wday = tmp->tm_wday + 1 ;
918
+ if (tmp->tm_wday == 0 ) {
919
+ _wday = RTC_WEEKDAY_SUNDAY;
920
+ } else {
921
+ _wday = tmp->tm_wday ;
922
+ }
915
923
_hours = tmp->tm_hour ;
916
924
_minutes = tmp->tm_min ;
917
925
_seconds = tmp->tm_sec ;
You can’t perform that action at this time.
0 commit comments