Merge pull request #152 from DioxusLabs/jk/drop-order-tweak

tweak: drop hooks before resetting bump arena
This commit is contained in:
Jonathan Kelley 2022-01-24 12:35:51 -05:00 committed by GitHub
commit 508f7e9c40
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -891,13 +891,15 @@ impl ScopeState {
self.frames[0].reset(); self.frames[0].reset();
self.frames[1].reset(); self.frames[1].reset();
// Finally, free up the hook values // Free up the hook values
self.hook_arena.reset();
self.hook_vals.get_mut().drain(..).for_each(|state| { self.hook_vals.get_mut().drain(..).for_each(|state| {
let as_mut = unsafe { &mut *state }; let as_mut = unsafe { &mut *state };
let boxed = unsafe { bumpalo::boxed::Box::from_raw(as_mut) }; let boxed = unsafe { bumpalo::boxed::Box::from_raw(as_mut) };
drop(boxed); drop(boxed);
}); });
// Finally, clear the hook arena
self.hook_arena.reset();
} }
} }