fix error deserializing null semantic version

This commit is contained in:
Jesse Plamondon-Willard 2023-04-30 13:43:23 -04:00
parent 76a0497684
commit 5d2afc0aa4
No known key found for this signature in database
GPG Key ID: CF8B1456B3E29F49
2 changed files with 7 additions and 1 deletions

View File

@ -12,6 +12,9 @@
* In multiplayer, the game/SMAPI window titles now show whether you're the main player or a farmhand. * In multiplayer, the game/SMAPI window titles now show whether you're the main player or a farmhand.
* Fixed logged SMAPI errors not having line numbers on Linux/macOS. * Fixed logged SMAPI errors not having line numbers on Linux/macOS.
* For mod authors:
* Fixed error loading a mod if it sets `"MinimumApiVersion": null` explicitly.
* For SMAPI toolkit users: * For SMAPI toolkit users:
* Fixed `ModFolder` not being JSON-serializable. * Fixed `ModFolder` not being JSON-serializable.
@ -23,7 +26,7 @@ Released 09 April 2023 for Stardew Valley 1.5.6 or later.
* Fixed installer error for some Linux players due to a non-portable shebang (thanks to freyacoded!). * Fixed installer error for some Linux players due to a non-portable shebang (thanks to freyacoded!).
* Fixed error using load order overrides when there are broken mods installed (thanks to atravita!). * Fixed error using load order overrides when there are broken mods installed (thanks to atravita!).
* Removed `LargeAddressAware` flag on SMAPI (no longer needed since it's 64-bit now). * Removed `LargeAddressAware` flag on SMAPI (no longer needed since it's 64-bit now).
* Improved translations. Thganks to stylemate (updated Korean)! * Improved translations. Thanks to stylemate (updated Korean)!
* For mod authors: * For mod authors:
* Added `IsActiveForScreen()` method to `PerScreen<T>`. * Added `IsActiveForScreen()` method to `PerScreen<T>`.

View File

@ -44,6 +44,9 @@ namespace StardewModdingAPI.Toolkit.Serialization.Converters
string path = reader.Path; string path = reader.Path;
switch (reader.TokenType) switch (reader.TokenType)
{ {
case JsonToken.Null:
return null;
case JsonToken.StartObject: case JsonToken.StartObject:
return this.ReadObject(JObject.Load(reader)); return this.ReadObject(JObject.Load(reader));