Dispose container array properly

This commit is contained in:
KillzXGaming 2019-06-29 17:41:13 -04:00
parent a6a5f2ac50
commit 46fe140f33
4 changed files with 33 additions and 17 deletions

Binary file not shown.

View file

@ -348,29 +348,45 @@ namespace FirstPlugin
{
if (ContainerArray.Count > 1)
{
foreach (var container in ContainerArray)
{
foreach (var tex in container.Textures.Values)
{
tex.Texture.TextureData.Clear();
tex.Texture = null;
tex.DisposeRenderable();
}
container.Textures.Clear();
container.Nodes.Clear();
container.BinaryTexFile = null;
if (PluginRuntime.bntxContainers.Contains(container))
PluginRuntime.bntxContainers.Remove(container);
}
GC.SuppressFinalize(this);
}
else
{
foreach (var tex in Textures.Values)
{
tex.Texture.TextureData.Clear();
tex.Texture = null;
tex.DisposeRenderable();
}
Textures.Clear();
Nodes.Clear();
this.BinaryTexFile = null;
if (PluginRuntime.bntxContainers.Contains(this))
PluginRuntime.bntxContainers.Remove(this);
GC.SuppressFinalize(this);
}
foreach (var tex in Textures.Values)
{
tex.Texture.TextureData.Clear();
tex.Texture = null;
tex.DisposeRenderable();
}
Textures.Clear();
Nodes.Clear();
this.BinaryTexFile = null;
if (PluginRuntime.bntxContainers.Contains(this))
PluginRuntime.bntxContainers.Remove(this);
GC.SuppressFinalize(this);
}
public static byte[] CreateNewBNTX(string Name)