Update millisecond issue on Alarm
authorJoohyun Kim <joohyune.kim@samsung.com>
Thu, 28 Mar 2013 13:38:27 +0000 (22:38 +0900)
committerJoohyun Kim <joohyune.kim@samsung.com>
Thu, 28 Mar 2013 13:38:27 +0000 (22:38 +0900)
Change-Id: I0720e9ed47ad5444be16ab8d94a4f73657161b0b
Signed-off-by: Joohyun Kim <joohyune.kim@samsung.com>
src/system/FSys_AlarmManager.cpp

index a06363e..ec02c29 100644 (file)
@@ -466,13 +466,16 @@ _AlarmManager::OnAlarmExpired(int alarmId)
                        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);