Update for log and documentation
[platform/framework/native/appfw.git] / src / base / runtime / FBaseRt_TimerImpl.cpp
index 3dbbc8a..f1159bc 100644 (file)
@@ -235,18 +235,21 @@ _TimerImpl::Cancel(void)
 {
        int ret = -1;
        struct itimerspec newTimeout;
-       SysTryReturnResult(NID_BASE_RT, (__status == TIMER_STATUS_ACTIVATED) || (__status == TIMER_STATUS_ACTIVATED_REPEATABLE), E_INVALID_STATE, "Timer is not started.");
-
-       newTimeout.it_value.tv_sec = 0;
-       newTimeout.it_value.tv_nsec = 0;
-       newTimeout.it_interval.tv_sec = 0;
-       newTimeout.it_interval.tv_nsec = 0;
-
-       ret = timerfd_settime(__timerFd, TFD_TIMER_ABSTIME, &newTimeout, null);
-       SysTryReturnResult(NID_BASE_RT, ret != -1, E_SYSTEM, "Failed to unset timeout.");
-
-       __status = TIMER_STATUS_CANCELED;
-
+       if ((__status == TIMER_STATUS_ACTIVATED) || (__status == TIMER_STATUS_ACTIVATED_REPEATABLE))
+       {
+               newTimeout.it_value.tv_sec = 0;
+               newTimeout.it_value.tv_nsec = 0;
+               newTimeout.it_interval.tv_sec = 0;
+               newTimeout.it_interval.tv_nsec = 0;
+
+               ret = timerfd_settime(__timerFd, TFD_TIMER_ABSTIME, &newTimeout, null);
+               SysTryReturnResult(NID_BASE_RT, ret != -1, E_SYSTEM, "Failed to unset timeout.");
+               __status = TIMER_STATUS_CANCELED;
+       }
+       else
+       {
+               SysLog(NID_BASE_RT, "The timer is not started.");
+       }
        return E_SUCCESS;
 }