From ed8eb072c56cd99b4b26988e3582c703967e8a86 Mon Sep 17 00:00:00 2001 From: Ari Vuollet Date: Sat, 12 Apr 2025 02:11:06 +0300 Subject: [PATCH 1/2] Fix error in LocalizationSettingsEditor after adding new locales --- .../CustomEditors/Dedicated/LocalizationSettingsEditor.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Editor/CustomEditors/Dedicated/LocalizationSettingsEditor.cs b/Source/Editor/CustomEditors/Dedicated/LocalizationSettingsEditor.cs index fe5729acc..bfe3d5efe 100644 --- a/Source/Editor/CustomEditors/Dedicated/LocalizationSettingsEditor.cs +++ b/Source/Editor/CustomEditors/Dedicated/LocalizationSettingsEditor.cs @@ -137,7 +137,7 @@ namespace FlaxEditor.CustomEditors.Dedicated table.Entries = entries; if (!table.Save(path)) { - Object.Destroy(table); + Object.DestroyNow(table); newTables.Add(FlaxEngine.Content.LoadAsync(path)); } } @@ -153,7 +153,7 @@ namespace FlaxEditor.CustomEditors.Dedicated table.Locale = culture.Name; if (!table.Save(path)) { - Object.Destroy(table); + Object.DestroyNow(table); newTables.Add(FlaxEngine.Content.LoadAsync(path)); } } From 5f92932c40110ca5c38d4e0c2675135278ee253a Mon Sep 17 00:00:00 2001 From: Ari Vuollet Date: Sat, 12 Apr 2025 02:32:10 +0300 Subject: [PATCH 2/2] Fix saving virtual JsonAssets to path --- Source/Engine/Content/JsonAsset.cpp | 8 +++++++- Source/Engine/Content/JsonAsset.h | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Source/Engine/Content/JsonAsset.cpp b/Source/Engine/Content/JsonAsset.cpp index abdca7c4b..60f05d38e 100644 --- a/Source/Engine/Content/JsonAsset.cpp +++ b/Source/Engine/Content/JsonAsset.cpp @@ -172,7 +172,7 @@ bool JsonAssetBase::Save(const StringView& path) rapidjson_flax::StringBuffer buffer; PrettyJsonWriter writerObj(buffer); _isResaving = true; - Save(writerObj); + saveInternal(writerObj); _isResaving = false; // Save json to file @@ -189,6 +189,12 @@ bool JsonAssetBase::Save(JsonWriter& writer) const { if (OnCheckSave()) return true; + + return saveInternal(writer); +} + +bool JsonAssetBase::saveInternal(JsonWriter& writer) const +{ ScopeLock lock(Locker); writer.StartObject(); diff --git a/Source/Engine/Content/JsonAsset.h b/Source/Engine/Content/JsonAsset.h index 74f122331..11c13ce80 100644 --- a/Source/Engine/Content/JsonAsset.h +++ b/Source/Engine/Content/JsonAsset.h @@ -101,6 +101,7 @@ protected: void unload(bool isReloading) override; #if USE_EDITOR void onRename(const StringView& newPath) override; + bool saveInternal(JsonWriter& writer) const; #endif };