diff --git a/Libraries/Core/Utils/Cloners/JsonCloner.cs b/Libraries/Core/Utils/Cloners/JsonCloner.cs index b571554c..4cb710d0 100644 --- a/Libraries/Core/Utils/Cloners/JsonCloner.cs +++ b/Libraries/Core/Utils/Cloners/JsonCloner.cs @@ -1,3 +1,4 @@ +using System.Text.Json; using SptCommon.Annotations; namespace Core.Utils.Cloners; @@ -5,15 +6,14 @@ namespace Core.Utils.Cloners; [Injectable] public class JsonCloner : ICloner { - protected JsonUtil _jsonUtil; - - public JsonCloner(JsonUtil jsonUtil) - { - _jsonUtil = jsonUtil; - } - public T? Clone(T? obj) { - return _jsonUtil.Deserialize(_jsonUtil.Serialize(obj)); + using (MemoryStream ms = new()) + { + JsonSerializer.Serialize(ms, obj); + ms.Seek(0, SeekOrigin.Begin); + + return JsonSerializer.Deserialize(ms); + } } }