Root nodes join through ModRoot.AddDeferred, so a reload that unloads the mod first never hands Godot a freed node

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
cthangoverandClaude Opus 5.5 committed 2026-10-24 11:29:15 +02:00
1 parent 6cd97b8b45
commit 1f932937d8
1 file changed
+1 -1
+1 -1
View File
@@ -38,7 +38,7 @@ namespace Cthangover.LocaleAtlas
queued = true; queued = true;
var directory = ProjectSettings.GlobalizePath(output); var directory = ProjectSettings.GlobalizePath(output);
GameLogger.Log("LOCALE_ATLAS", $"locale atlas requested, report directory '{directory}'"); GameLogger.Log("LOCALE_ATLAS", $"locale atlas requested, report directory '{directory}'");
(Godot.Engine.GetMainLoop() as SceneTree)?.Root?.CallDeferred("add_child", new LocaleAtlasDriverNode(directory, ParseTimeout(args))); ModRoot.AddDeferred(new LocaleAtlasDriverNode(directory, ParseTimeout(args)));
} }
private static float ParseTimeout(string[] args) private static float ParseTimeout(string[] args)