if(endTime != null)
{
DateTime currentTime;
+ DateTime reservedEndTime = *endTime;
+
SystemTime::GetCurrentTime(WALL_TIME, currentTime);
- SysLog(NID_SYS, "Current time: %d:%d:%d", currentTime.GetHour(), currentTime.GetMinute(), currentTime.GetSecond());
+ currentTime.AddMilliseconds(-1 * currentTime.GetMillisecond()); //Remove millisecond
+ reservedEndTime.AddMilliseconds(-1 * reservedEndTime.GetMillisecond()); //Remove millisecond
currentTime.AddMinutes(pPeriod->ToInt());
- SysLog(NID_SYS, "Next time: %d:%d:%d", currentTime.GetHour(), currentTime.GetMinute(), currentTime.GetSecond());
- SysLog(NID_SYS, "Endtime is exist %d:%d:%d", endTime->GetHour(), endTime->GetMinute(), endTime->GetSecond());
+ SysLog(NID_SYS, "Next time[%d min]: %d:%d:%d:%d", pPeriod->ToInt(), currentTime.GetHour(), currentTime.GetMinute(), currentTime.GetSecond(), currentTime.GetMillisecond());
+ SysLog(NID_SYS, "Reserved Endtime is exist %d:%d:%d:%d", reservedEndTime.GetHour(), reservedEndTime.GetMinute(), reservedEndTime.GetSecond(), reservedEndTime.GetMillisecond());
- if (currentTime.CompareTo(*endTime) >= 0)
+ if (currentTime.CompareTo(reservedEndTime) >= 0)
{
SysLog(NID_SYS, "Next time is greater then end time.");
RemoveAlarmList(alarmId);