Fixed crashes due to wrong use of append allocations

This commit is contained in:
Simon Lübeß
2025-02-24 23:00:09 +01:00
parent 28121d1b42
commit 0236130df1
5 changed files with 26 additions and 13 deletions
+13 -8
View File
@@ -16,18 +16,18 @@ class EngineClasses
{
// TODO: Not all of these are actually ScriptClasses (actually none of them are...)
private ScriptClass s_ComponentRoot ~ _?.ReleaseRef();
private ScriptClass s_EntityRoot ~ _?.ReleaseRef();
private ScriptClass s_EngineObject ~ _?.ReleaseRef();
private ScriptClass s_ComponentRoot;
private ScriptClass s_EntityRoot;
private ScriptClass s_EngineObject;
private EntityEditorWrapper s_EntityEditor ~ _?.ReleaseRef();
private EntityEditorWrapper s_EntityEditor;
private EntitySerializerWrapper s_EntitySerializer ~ _?.ReleaseRef();
private ScriptClass s_SerializationContext ~ _?.ReleaseRef();
private EntitySerializerWrapper s_EntitySerializer;
private ScriptClass s_SerializationContext;
private ScriptClass s_Collision2D ~ _?.ReleaseRef();
private ScriptClass s_Collision2D;
private ScriptClass s_RunInEditModeAttribute ~ _?.ReleaseRef();
private ScriptClass s_RunInEditModeAttribute;
public ScriptClass ComponentRoot => s_ComponentRoot;
public ScriptClass EntityRoot => s_EntityRoot;
@@ -41,6 +41,11 @@ class EngineClasses
public ScriptClass RunInEditModeAttribute => s_RunInEditModeAttribute;
public ~this()
{
ReleaseAndNullify();
}
internal void ReleaseAndNullify()
{
ReleaseRefAndNullify!(s_EngineObject);