From 16554fe742b2264e220f06f4fbc9ec0b7422e0a2 Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Wed, 17 Apr 2024 16:17:39 +0200 Subject: [PATCH] Fix cloning value utility for object references #2399 --- Source/Editor/Utilities/Utils.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Source/Editor/Utilities/Utils.cs b/Source/Editor/Utilities/Utils.cs index 1b76de47e..fbbbd71bf 100644 --- a/Source/Editor/Utilities/Utils.cs +++ b/Source/Editor/Utilities/Utils.cs @@ -210,12 +210,17 @@ namespace FlaxEditor.Utilities /// The duplicated value. internal static object CloneValue(object value) { + // For object references just clone it + if (value is FlaxEngine.Object) + return value; + // For objects (eg. arrays) we need to clone them to prevent editing default/reference value within editor if (value != null && (!value.GetType().IsValueType || !value.GetType().IsClass)) { var json = JsonSerializer.Serialize(value); value = JsonSerializer.Deserialize(json, value.GetType()); } + return value; }