From dfa9b4ebbc6da98968b1f44a969835d3fc64c847 Mon Sep 17 00:00:00 2001 From: Sewer56 Date: Thu, 17 Oct 2024 22:41:16 +0100 Subject: [PATCH] Improved: ConfigService now clones ItemsByFolder to avoid issues with concurrent access --- source/Reloaded.Mod.Loader.IO/Services/ConfigServiceBase.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/Reloaded.Mod.Loader.IO/Services/ConfigServiceBase.cs b/source/Reloaded.Mod.Loader.IO/Services/ConfigServiceBase.cs index 8da20f59..81af29f7 100644 --- a/source/Reloaded.Mod.Loader.IO/Services/ConfigServiceBase.cs +++ b/source/Reloaded.Mod.Loader.IO/Services/ConfigServiceBase.cs @@ -188,7 +188,7 @@ private void OnDeleteDirectory(object sender, FileSystemEventArgs e) // Otherwise iterate over all possible subfolders. // This is a bit inefficient, but with nested mods, it's the only way (without creating a whole tree of nodes). // Can rack up upwards of 20ms in huge mod directories. - foreach (var item in ItemsByFolder) + foreach (var item in ItemsByFolder.ToArray()) { var modFolder = item.Key; if (!Path.EndsInDirectorySeparator(modFolder))