Skip to content

Commit 667c659

Browse files
committed
possible nullreferences removed
added argumentnullexception if the reader / writer or values are null
1 parent 97b8c13 commit 667c659

1 file changed

Lines changed: 12 additions & 2 deletions

File tree

src/LogExpert.Core/Classes/Persister/ColumnizerJsonConverter.cs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,11 @@ public override bool CanConvert (Type objectType)
1818
return typeof(ILogLineColumnizer).IsAssignableFrom(objectType);
1919
}
2020

21-
public override void WriteJson (JsonWriter writer, object value, JsonSerializer serializer)
21+
public override void WriteJson (JsonWriter writer, object? value, JsonSerializer serializer)
2222
{
23+
ArgumentNullException.ThrowIfNull(writer);
24+
ArgumentNullException.ThrowIfNull(value);
25+
2326
if (value is not ILogLineColumnizer columnizer)
2427
{
2528
writer.WriteNull();
@@ -45,8 +48,15 @@ public override void WriteJson (JsonWriter writer, object value, JsonSerializer
4548
writer.WriteEndObject();
4649
}
4750

48-
public override object ReadJson (JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
51+
public override object ReadJson (JsonReader reader, Type objectType, object? existingValue, JsonSerializer serializer)
4952
{
53+
ArgumentNullException.ThrowIfNull(reader);
54+
55+
if (reader.TokenType == JsonToken.Null)
56+
{
57+
return null;
58+
}
59+
5060
var jObject = JObject.Load(reader);
5161
var typeName = jObject["Type"]?.ToString();
5262
if (typeName == null || jObject["State"] is not JObject state)

0 commit comments

Comments
 (0)