Fix issue with collection settings being set to negative value for some reason.

This commit is contained in:
Ottermandias 2024-06-03 17:47:11 +02:00
parent aeb2db9f5d
commit 699ae8e1fb

View file

@ -85,6 +85,24 @@ public readonly record struct Setting(ulong Value)
public override Setting ReadJson(JsonReader reader, Type objectType, Setting existingValue, bool hasExistingValue, public override Setting ReadJson(JsonReader reader, Type objectType, Setting existingValue, bool hasExistingValue,
JsonSerializer serializer) JsonSerializer serializer)
=> new(serializer.Deserialize<ulong>(reader)); {
try
{
return new Setting(serializer.Deserialize<ulong>(reader));
}
catch (Exception e)
{
Penumbra.Log.Warning($"Could not deserialize setting {reader.Value} to unsigned long:\n{e}");
try
{
return new Setting((ulong)serializer.Deserialize<long>(reader));
}
catch
{
Penumbra.Log.Warning($"Could not deserialize setting {reader.Value} to long:\n{e}");
return Zero;
}
}
}
} }
} }