From 3ea60eeb72ea6b85ca86545c2bb0f860966de887 Mon Sep 17 00:00:00 2001 From: auronandace Date: Wed, 11 Mar 2026 14:51:06 +0000 Subject: [PATCH] timespec clone followup for redox --- src/platform/redox/mod.rs | 6 +++--- src/platform/redox/timer.rs | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/platform/redox/mod.rs b/src/platform/redox/mod.rs index 33508c2d24..5f527cfaa3 100644 --- a/src/platform/redox/mod.rs +++ b/src/platform/redox/mod.rs @@ -1367,7 +1367,7 @@ impl Pal for Sys { Self::clock_gettime(timer_st.clockid, Out::from_mut(&mut now))?; if timer_st.evp.sigev_notify == SIGEV_NONE { - if timespec::subtract(timer_st.next_wake_time.it_value, now).is_none() { + if timespec::subtract(timer_st.next_wake_time.it_value.clone(), now.clone()).is_none() { // error here means the timer is disarmed let _ = timer_update_wake_time(timer_st); } @@ -1378,8 +1378,8 @@ impl Pal for Sys { itimerspec::default() } else { itimerspec { - it_interval: timer_st.next_wake_time.it_interval, - it_value: timespec::subtract(timer_st.next_wake_time.it_value, now) + it_interval: timer_st.next_wake_time.it_interval.clone(), + it_value: timespec::subtract(timer_st.next_wake_time.it_value.clone(), now) .unwrap_or_default(), } }); diff --git a/src/platform/redox/timer.rs b/src/platform/redox/timer.rs index b79a27dc02..8a46f8a550 100644 --- a/src/platform/redox/timer.rs +++ b/src/platform/redox/timer.rs @@ -86,7 +86,7 @@ pub(crate) fn timer_update_wake_time(timer_st: &mut timer_internal_t) -> Result< } else { let mut now = timespec::default(); Sys::clock_gettime(timer_st.clockid, Out::from_mut(&mut now))?; - let next_time = match timespec::add(now, timer_st.next_wake_time.it_interval) { + let next_time = match timespec::add(now, timer_st.next_wake_time.it_interval.clone()) { Some(a) => a, None => timespec::default(), };