[newlib-cygwin] Cygwin: timerfd: Handle gettime error in settime

Corinna Vinschen corinna@sourceware.org
Sun Jan 20 23:15:00 GMT 2019


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=a3268ac392241830cf6c91abe663f252c407cf8c

commit a3268ac392241830cf6c91abe663f252c407cf8c
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Mon Jan 21 00:14:51 2019 +0100

    Cygwin: timerfd: Handle gettime error in settime
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/timerfd.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/winsup/cygwin/timerfd.cc b/winsup/cygwin/timerfd.cc
index 4f04efd..e5c17fb 100644
--- a/winsup/cygwin/timerfd.cc
+++ b/winsup/cygwin/timerfd.cc
@@ -590,8 +590,8 @@ timerfd_tracker::settime (int flags, const struct itimerspec *new_value,
 	  ret = -EBADF;
 	  __leave;
 	}
-      if (old_value)
-	gettime (old_value);
+      if (old_value && (ret = gettime (old_value)) < 0)
+	__leave;
       if (new_value->it_value.tv_sec == 0 && new_value->it_value.tv_nsec == 0)
 	ret = disarm_timer ();
       else



More information about the Cygwin-cvs mailing list