@@ -1404,13 +1404,14 @@ void MainWorker::DecodeRXMessage(const CDomoticzHardwareBase *pHardware, const u
1404
1404
// Get a timestamp
1405
1405
struct timeval tv;
1406
1406
gettimeofday (&tv, NULL );
1407
- struct tm *tm;
1408
- tm = localtime (&tv.tv_sec );
1407
+
1408
+ struct tm timeinfo;
1409
+ localtime_r (&tv.tv_sec , &timeinfo);
1409
1410
1410
1411
// create a time stamp string for the log message
1411
1412
snprintf (szDate, sizeof (szDate), " %04d-%02d-%02d %02d:%02d:%02d.%03d " ,
1412
- tm-> tm_year + 1900 , tm-> tm_mon + 1 , tm-> tm_mday ,
1413
- tm-> tm_hour , tm-> tm_min , tm-> tm_sec , (int )tv.tv_usec / 1000 );
1413
+ timeinfo. tm_year + 1900 , timeinfo. tm_mon + 1 , timeinfo. tm_mday ,
1414
+ timeinfo. tm_hour , timeinfo. tm_min , timeinfo. tm_sec , (int )tv.tv_usec / 1000 );
1414
1415
#else
1415
1416
// Get a timestamp
1416
1417
SYSTEMTIME time;
@@ -9744,8 +9745,12 @@ bool MainWorker::SwitchModal(const std::string &idx, const std::string &status,
9744
9745
WriteToHardware (HardwareID,(const char *)&tsen,sizeof (tsen.EVOHOME1 ));
9745
9746
9746
9747
// convert now to string form
9747
- time_t now = time (0 );
9748
- char *szDate = asctime (localtime (&now));
9748
+ time_t now = mytime (NULL );
9749
+
9750
+ struct tm timeinfo;
9751
+ localtime_r (&now, &timeinfo);
9752
+
9753
+ char *szDate = asctime (&timeinfo);
9749
9754
szDate[strlen (szDate)-1 ]=0 ;
9750
9755
9751
9756
WriteMessageStart ();
@@ -10477,13 +10482,14 @@ void MainWorker::SetInternalSecStatus()
10477
10482
// Get a timestamp
10478
10483
struct timeval tv;
10479
10484
gettimeofday (&tv, NULL );
10480
- struct tm *tm;
10481
- tm = localtime (&tv.tv_sec );
10485
+
10486
+ struct tm timeinfo;
10487
+ localtime_r (&tv.tv_sec , &timeinfo);
10482
10488
10483
10489
// create a time stamp string for the log message
10484
10490
snprintf (szDate, sizeof (szDate), " %04d-%02d-%02d %02d:%02d:%02d.%03d " ,
10485
- tm-> tm_year + 1900 , tm-> tm_mon + 1 , tm-> tm_mday ,
10486
- tm-> tm_hour , tm-> tm_min , tm-> tm_sec , (int )tv.tv_usec / 1000 );
10491
+ timeinfo. tm_year + 1900 , timeinfo. tm_mon + 1 , timeinfo. tm_mday ,
10492
+ timeinfo. tm_hour , timeinfo. tm_min , timeinfo. tm_sec , (int )tv.tv_usec / 1000 );
10487
10493
#else
10488
10494
// Get a timestamp
10489
10495
SYSTEMTIME time;
0 commit comments