From d78c42a65327a5889636da1a8d99e57513e20098 Mon Sep 17 00:00:00 2001 From: Syntriax Date: Tue, 5 Aug 2025 20:57:03 +0300 Subject: [PATCH] feat: update manager now calls last frames listeners on process exit as well --- Engine.Core/Systems/UpdateManager.cs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Engine.Core/Systems/UpdateManager.cs b/Engine.Core/Systems/UpdateManager.cs index 5d0c0cc..ac61131 100644 --- a/Engine.Core/Systems/UpdateManager.cs +++ b/Engine.Core/Systems/UpdateManager.cs @@ -75,9 +75,16 @@ public class UpdateManager : Behaviour args.BehaviourRemoved.LastActiveFrame(); } + private void CallLastFramesBeforeExit(object? sender, System.EventArgs e) + { + for (int i = lastFrameUpdates.Count - 1; i >= 0; i--) + lastFrameUpdates[i].LastActiveFrame(); + } + public UpdateManager() { firstFrameUpdates.OnCollected.AddListener(OnFirstFrameCollected); lastFrameUpdates.OnRemoved.AddListener(OnLastFrameRemoved); + System.AppDomain.CurrentDomain.ProcessExit += CallLastFramesBeforeExit; } }