From 4fbc56b86b8231e0362297bd38bdb5924f9645f0 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sun, 29 Oct 2023 14:12:20 +0800 Subject: [PATCH] 1 --- src/xtimer.rs | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/src/xtimer.rs b/src/xtimer.rs index c96c0a3..bcbf096 100644 --- a/src/xtimer.rs +++ b/src/xtimer.rs @@ -276,27 +276,29 @@ impl XTimer { } } } - let running_timer = this.borrow().running_timer.clone(); - match running_timer.upgrade() { - Some(v) => { - let timer_wp = Rc::downgrade(&v.borrow().wp.clone().unwrap()); - let timer_type = v.borrow().timer_type.clone(); - let expire_time = v.borrow().expire_time; - match timer_type { - TimerType::Timeout => { - this.borrow_mut().internal_delete - (Rc::downgrade(&v.borrow().wp.clone().unwrap()), - false); - } - TimerType::Interval => { - this.borrow_mut().internal_modify( - timer_wp, - expire_time - ); + { + let running_timer = this.borrow().running_timer.clone(); + match running_timer.upgrade() { + Some(v) => { + let timer_wp = Rc::downgrade(&v.borrow().wp.as_ref().unwrap()); + let timer_type = v.borrow().timer_type.clone(); + let expire_time = v.borrow().expire_time; + match timer_type { + TimerType::Timeout => { + this.borrow_mut().internal_delete + (timer_wp, + false); + } + TimerType::Interval => { + this.borrow_mut().internal_modify( + timer_wp, + expire_time + ); + } } } - } - None => { + None => { + } } } }