summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <github@jplamondonw.com>2018-03-04 14:33:50 -0500
committerJesse Plamondon-Willard <github@jplamondonw.com>2018-03-04 14:33:50 -0500
commit38ca63a8f60adfa17a9a13ba19fdda070a91aebf (patch)
treea8688a0f46943cd9d2e6cd73393a7dad117f0cf5
parentac6127c63e2978a5cf63ff4753991e5ab33db8c3 (diff)
downloadSMAPI-38ca63a8f60adfa17a9a13ba19fdda070a91aebf.tar.gz
SMAPI-38ca63a8f60adfa17a9a13ba19fdda070a91aebf.tar.bz2
SMAPI-38ca63a8f60adfa17a9a13ba19fdda070a91aebf.zip
fix null reference when checking FormerIDs field against 'authour' field
-rw-r--r--docs/release-notes.md3
-rw-r--r--src/SMAPI/Framework/ModData/ModDatabase.cs2
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));