This commit is contained in:
aozhiwei 2023-10-07 17:19:33 +08:00
parent 1b89d4c147
commit 09592ce920

View File

@ -42,6 +42,7 @@ impl<T> ListHead<T> {
pub fn del_init(&mut self) { pub fn del_init(&mut self) {
self.next.upgrade().unwrap().borrow_mut().prev = self.prev.clone(); self.next.upgrade().unwrap().borrow_mut().prev = self.prev.clone();
self.prev.upgrade().unwrap().borrow_mut().next = self.next.clone(); self.prev.upgrade().unwrap().borrow_mut().next = self.next.clone();
self.init();
} }
pub fn empty(&self) -> bool { pub fn empty(&self) -> bool {
@ -70,6 +71,7 @@ impl<T> ListHead<T> {
pnew.borrow_mut().next = head.borrow_mut().next.clone(); pnew.borrow_mut().next = head.borrow_mut().next.clone();
pnew.borrow_mut().next.upgrade().unwrap().borrow_mut().prev = Rc::downgrade(pnew); pnew.borrow_mut().next.upgrade().unwrap().borrow_mut().prev = Rc::downgrade(pnew);
pnew.borrow_mut().prev = head.borrow_mut().prev.clone(); pnew.borrow_mut().prev = head.borrow_mut().prev.clone();
head.borrow_mut().init();
} }
} }