From 38ca63a8f60adfa17a9a13ba19fdda070a91aebf Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Sun, 4 Mar 2018 14:33:50 -0500 Subject: fix null reference when checking FormerIDs field against 'authour' field --- docs/release-notes.md | 3 ++- src/SMAPI/Framework/ModData/ModDatabase.cs | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/release-notes.md b/docs/release-notes.md index e1c262be..37d3c7aa 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,9 +1,10 @@ # Release notes ## 2.5.3 * For players: - * Fixed some incompatible-mod errors not showing the mod URL. * Simplified default mod update URL, which is now always included for incompatible mods. * Updated compatibility list. + * Fixed some incompatible-mod errors not showing the mod URL. + * Fixed rare crash with a specific combination of `manifest.json` fields and internal SMAPI mod data. * For the [log parser][]: * Fixed mod list not including all mods if at least one has no author name. diff --git a/src/SMAPI/Framework/ModData/ModDatabase.cs b/src/SMAPI/Framework/ModData/ModDatabase.cs index 332c5c48..3fd68440 100644 --- a/src/SMAPI/Framework/ModData/ModDatabase.cs +++ b/src/SMAPI/Framework/ModData/ModDatabase.cs @@ -157,7 +157,7 @@ namespace StardewModdingAPI.Framework.ModData && ( snapshot.Author == null || snapshot.Author.Equals(manifest.Author, StringComparison.InvariantCultureIgnoreCase) - || (manifest.ExtraFields.ContainsKey("Authour") && snapshot.Author.Equals(manifest.ExtraFields["Authour"].ToString(), StringComparison.InvariantCultureIgnoreCase)) + || (manifest.ExtraFields != null && manifest.ExtraFields.ContainsKey("Authour") && snapshot.Author.Equals(manifest.ExtraFields["Authour"].ToString(), StringComparison.InvariantCultureIgnoreCase)) ) && (snapshot.Name == null || snapshot.Name.Equals(manifest.Name, StringComparison.InvariantCultureIgnoreCase)); -- cgit