Fixed string deserialization in release builds

This commit is contained in:
Simon Lübeß
2026-08-02 16:28:59 +02:00
parent ec9fccee12
commit eaffc1a135
+6 -6
View File
@@ -490,9 +490,9 @@ class SceneSerializer
case "NameComponent": case "NameComponent":
Try!(DeserializeComponent<NameComponent>(reader, entity, scope (component) => Try!(DeserializeComponent<NameComponent>(reader, entity, scope (component) =>
{ {
Try!(Deserialize.Value<String>(reader, "Name", let name)); String name = scope String();
Try!(Deserialize.Value<String>(reader, "Name", out name));
component.Name = name; component.Name = name;
delete name;
return .Ok; return .Ok;
})); }));
@@ -738,9 +738,9 @@ class SceneSerializer
switch(fieldIdentifier) switch(fieldIdentifier)
{ {
case "ScriptClass": case "ScriptClass":
Try!(Deserialize.Value<String>(reader, let scriptClassName)); String scriptClassName = scope String();
Try!(Deserialize.Value<String>(reader, out scriptClassName));
component.ScriptClassName = scriptClassName; component.ScriptClassName = scriptClassName;
delete scriptClassName;
case "Fields": case "Fields":
Try!(SerializedObject.BonDeserialize(reader, _scriptSerializer, _fileVersion, gBonEnv)); Try!(SerializedObject.BonDeserialize(reader, _scriptSerializer, _fileVersion, gBonEnv));
default: default:
@@ -765,9 +765,9 @@ class SceneSerializer
Try!(Deserialize.Value<bool>(reader, let isRichText)); Try!(Deserialize.Value<bool>(reader, let isRichText));
component.IsRichText = isRichText; component.IsRichText = isRichText;
case "Text": case "Text":
Try!(Deserialize.Value<String>(reader, let text)); String text = scope String();
Try!(Deserialize.Value<String>(reader, out text));
component.Text = text; component.Text = text;
delete text;
case "Color": case "Color":
Try!(Deserialize.Value(reader, out component.Color)); Try!(Deserialize.Value(reader, out component.Color));
case "FontSize": case "FontSize":