Remove event handlers to CellEntryChanged when done.
Several classes would attach event handlers to the Map which would live longer then they did. Detaching them when no longer needed allows the GC to reclaim them.
This commit is contained in:
@@ -207,6 +207,8 @@ namespace OpenRA.Mods.Common.Traits
|
||||
foreach (var kv in spriteLayers.Values)
|
||||
kv.Dispose();
|
||||
|
||||
Map.MapResources.Value.CellEntryChanged -= UpdateCell;
|
||||
|
||||
disposed = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -294,6 +294,8 @@ namespace OpenRA.Mods.Common.Traits
|
||||
foreach (var kv in spriteLayers.Values)
|
||||
kv.Dispose();
|
||||
|
||||
RenderContent.CellEntryChanged -= UpdateSpriteLayers;
|
||||
|
||||
disposed = true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user