summaryrefslogtreecommitdiff
path: root/src/StardewModdingAPI/Framework
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <github@jplamondonw.com>2017-04-29 21:46:01 -0400
committerJesse Plamondon-Willard <github@jplamondonw.com>2017-04-29 21:46:01 -0400
commitf52edf9e0b267e79f88c492e7d7e34f63744f21c (patch)
tree1d1d6dbd88aca1e456ac3ceff351a6f611c281f1 /src/StardewModdingAPI/Framework
parentff5d1ef4e4a096405b343de3f6d27715c248de3b (diff)
downloadSMAPI-f52edf9e0b267e79f88c492e7d7e34f63744f21c.tar.gz
SMAPI-f52edf9e0b267e79f88c492e7d7e34f63744f21c.tar.bz2
SMAPI-f52edf9e0b267e79f88c492e7d7e34f63744f21c.zip
fix mod events triggering during game save in Stardew Valley 1.2
Diffstat (limited to 'src/StardewModdingAPI/Framework')
-rw-r--r--src/StardewModdingAPI/Framework/SGame.cs10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/StardewModdingAPI/Framework/SGame.cs b/src/StardewModdingAPI/Framework/SGame.cs
index 7e04c391..fe7d3aa3 100644
--- a/src/StardewModdingAPI/Framework/SGame.cs
+++ b/src/StardewModdingAPI/Framework/SGame.cs
@@ -223,6 +223,16 @@ namespace StardewModdingAPI.Framework
return;
}
+ // While the game is writing to the save file in the background, mods can unexpectedly
+ // fail since they don't have exclusive access to resources (e.g. collection changed
+ // during enumeration errors). To avoid problems, events are not invoked while a save
+ // is in progress.
+ if (Context.IsSaving)
+ {
+ base.Update(gameTime);
+ return;
+ }
+
// raise game loaded
if (this.FirstUpdate)
{