From 1d91d23c1e065ee339dbc9544f783083d02265b3 Mon Sep 17 00:00:00 2001 From: Yoshman29 <81191621+YoshiCrafter29@users.noreply.github.com> Date: Tue, 10 Jan 2023 21:36:53 +0100 Subject: [PATCH] memory leak fix --- buildnumber.txt | 2 +- source/funkin/mods/ModsFolder.hx | 2 ++ source/funkin/scripting/HScript.hx | 8 ++++---- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/buildnumber.txt b/buildnumber.txt index 9947b8e3..d18eb2bc 100644 --- a/buildnumber.txt +++ b/buildnumber.txt @@ -1 +1 @@ -1995 \ No newline at end of file +1997 \ No newline at end of file diff --git a/source/funkin/mods/ModsFolder.hx b/source/funkin/mods/ModsFolder.hx index 57ebebde..d62dc8c3 100644 --- a/source/funkin/mods/ModsFolder.hx +++ b/source/funkin/mods/ModsFolder.hx @@ -86,8 +86,10 @@ class ModsFolder { public static function unloadMod(mod:String) { if (mod == null) return; + Paths.assetsTree.clearCache(); Paths.assetsTree.removeLibrary(loadedMods[mod]); Assets.unloadLibrary('mods/$mod'.toLowerCase()); + loadedMods[mod] = null; } public static function prepareLibrary(libName:String, force:Bool = false) { diff --git a/source/funkin/scripting/HScript.hx b/source/funkin/scripting/HScript.hx index 02c1effc..8a39c44d 100644 --- a/source/funkin/scripting/HScript.hx +++ b/source/funkin/scripting/HScript.hx @@ -72,15 +72,15 @@ class HScript extends Script { var oldParent = interp.scriptObject; onCreate(path); - for(k=>e in Script.getDefaultVariables()) { + for(k=>e in Script.getDefaultVariables()) set(k, e); - } load(); setParent(oldParent); - for(k=>e in savedVariables) { + + for(k=>e in savedVariables) interp.variables.set(k, e); - } + interp.allowStaticVariables = interp.allowPublicVariables = true; }