Ver Fonte

Address SonarLint findings in DateParameter class

Patrick-Christopher Mattulat há 1 ano atrás
pai
commit
a67f4c7d45

+ 2 - 2
source/ls-std/time/common/DateParameter.cpp

@@ -3,7 +3,7 @@
 * Company:         Lynar Studios
 * E-Mail:          webmaster@lynarstudios.com
 * Created:         2023-03-29
-* Changed:         2023-03-31
+* Changed:         2023-05-17
 *
 * */
 
@@ -17,7 +17,7 @@ using ls::std::time::type::Month;
 using ls::std::time::type::Second;
 using ls::std::time::type::Year;
 
-DateParameter::DateParameter(Year _year, Month _month, Day _day, Hour _hour, Minute _minute, Second _second) : year(_year), month(_month), day(_day), hour(_hour), minute(_minute), second(_second)
+DateParameter::DateParameter(Year _year, Month _month, Day _day, Hour _hour, Minute _minute, Second _second) : day(_day), hour(_hour), minute(_minute), month(_month), second(_second), year(_year)
 {}
 
 DateParameter::DateParameter() = default;

+ 15 - 11
source/ls-std/time/common/DateParameterMapper.cpp

@@ -3,7 +3,7 @@
 * Company:         Lynar Studios
 * E-Mail:          webmaster@lynarstudios.com
 * Created:         2023-03-31
-* Changed:         2023-04-01
+* Changed:         2023-05-17
 *
 * */
 
@@ -25,16 +25,20 @@ UnixTimestamp DateParameterMapper::toUnixTimestamp(const DateParameter &_datePar
 {
   time_t rawTime{};
   ::time(&rawTime);
-  tm *timeInfo = localtime(&rawTime);
-  timeInfo->tm_year = _dateParameter.getYear() - 1900;
-  timeInfo->tm_mon = _dateParameter.getMonth() - 1;
-  timeInfo->tm_mday = _dateParameter.getDay();
-  timeInfo->tm_hour = _dateParameter.getHour();
-  timeInfo->tm_min = _dateParameter.getMinute();
-  timeInfo->tm_sec = _dateParameter.getSecond();
-  timeInfo->tm_isdst = -1;
-
-  return (UnixTimestamp) mktime(timeInfo);
+  struct tm timeInfo
+  {
+  };
+  localtime_r(&rawTime, &timeInfo);
+
+  timeInfo.tm_year = _dateParameter.getYear() - 1900;
+  timeInfo.tm_mon = _dateParameter.getMonth() - 1;
+  timeInfo.tm_mday = _dateParameter.getDay();
+  timeInfo.tm_hour = _dateParameter.getHour();
+  timeInfo.tm_min = _dateParameter.getMinute();
+  timeInfo.tm_sec = _dateParameter.getSecond();
+  timeInfo.tm_isdst = -1;
+
+  return (UnixTimestamp) mktime(&timeInfo);
 }
 #endif