mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-15 22:28:10 +08:00
Fix inferred types memory leak (#1566)
This commit is contained in:
@@ -648,9 +648,17 @@ impl TypingContext {
|
||||
/// and store them in the `inferred` field. The proto network has to be topologically sorted
|
||||
/// and contain fully resolved stable node ids.
|
||||
pub fn update(&mut self, network: &ProtoNetwork) -> Result<(), GraphErrors> {
|
||||
let mut deleted_nodes = self.inferred.keys().copied().collect::<HashSet<_>>();
|
||||
|
||||
for (id, node) in network.nodes.iter() {
|
||||
self.infer(*id, node)?;
|
||||
deleted_nodes.remove(id);
|
||||
}
|
||||
|
||||
for node in deleted_nodes {
|
||||
self.inferred.remove(&node);
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user