diff --git a/packages/native-core/src/real_dom.rs b/packages/native-core/src/real_dom.rs index f5fb17603..ffda78ff7 100644 --- a/packages/native-core/src/real_dom.rs +++ b/packages/native-core/src/real_dom.rs @@ -76,6 +76,10 @@ impl RealDom { if self.node_id_mapping.len() <= element_id.0 { self.node_id_mapping.resize(element_id.0 + 1, None); } + if let Some(Some(old_id)) = self.node_id_mapping.get(element_id.0) { + // free the memory associated with the old node + self.tree.remove(*old_id); + } self.node_id_mapping[element_id.0] = Some(node_id); }