From: Samuel Thibault Date: Wed, 22 Jul 2026 20:24:29 +0000 (+0200) Subject: hurd: Make setitimer clear interval on value being 0 X-Git-Tag: glibc-2.44~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ffaa52a30eeff2bfb264bb17e4fa7b4c5c934bfa;p=thirdparty%2Fglibc.git hurd: Make setitimer clear interval on value being 0 posix says value being 0 means disabling a timer, regardless of the interval, so we should clear the interval in that case, so a further setitimer call does not see a non-zero interval. --- diff --git a/sysdeps/mach/hurd/setitimer.c b/sysdeps/mach/hurd/setitimer.c index 265576e00e..d0bca89157 100644 --- a/sysdeps/mach/hurd/setitimer.c +++ b/sysdeps/mach/hurd/setitimer.c @@ -271,7 +271,10 @@ setitimer_locked (const struct itimerval *new, struct itimerval *old) } /* Load the new itimer value. */ - _hurd_itimerval = newval; + if ((newval.it_value.tv_sec | newval.it_value.tv_usec) != 0) + _hurd_itimerval = newval; + else + _hurd_itimerval = (struct itimerval) { }; if ((newval.it_value.tv_sec | newval.it_value.tv_usec) == 0) {