Skip to content

Commit d4be777

Browse files
Fix UConfigPropertyClass Reset to Default Crash
1 parent 27c9fc5 commit d4be777

File tree

7 files changed

+18
-19
lines changed

7 files changed

+18
-19
lines changed

Mods/SML/Source/SML/Private/Configuration/Properties/ConfigPropertyClass.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,7 @@ bool UConfigPropertyClass::ResetToDefault_Implementation() {
7979
if (!CanResetNow() || !bDefaultValueInitialized) {
8080
return false;
8181
}
82-
UClass* DefaultClassObject = DuplicateObject<UClass>(DefaultValue, this);
83-
SetClassValue(DefaultClassObject);
82+
SetClassValue(DefaultValue);
8483
MarkDirty();
8584
return true;
8685
}

Mods/SML/Source/SML/Public/Configuration/Properties/ConfigPropertyArray.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,9 @@ class SML_API UConfigPropertyArray : public UConfigProperty, public IConfigValue
4747
virtual void Deserialize_Implementation(const URawFormatValue* Value) override;
4848
virtual FConfigVariableDescriptor CreatePropertyDescriptor_Implementation(UConfigGenerationContext* Context, const FString& OuterPath) const override;
4949
virtual void FillConfigStruct_Implementation(const FReflectedObject& ReflectedObject, const FString& VariableName) const override;
50-
virtual bool ResetToDefault_Implementation() override;
51-
virtual bool IsSetToDefaultValue_Implementation() const override;
52-
virtual FString GetDefaultValueAsString_Implementation() const override;
50+
virtual bool ResetToDefault_Implementation() override;
51+
virtual bool IsSetToDefaultValue_Implementation() const override;
52+
virtual FString GetDefaultValueAsString_Implementation() const override;
5353
//End UConfigProperty
5454

5555
//Begin IConfigValueDirtyHandlerInterface

Mods/SML/Source/SML/Public/Configuration/Properties/ConfigPropertyBool.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ class SML_API UConfigPropertyBool : public UConfigProperty {
2424
virtual FConfigVariableDescriptor CreatePropertyDescriptor_Implementation(UConfigGenerationContext* Context, const FString& OuterPath) const override;
2525
virtual void FillConfigStruct_Implementation(const FReflectedObject& ReflectedObject, const FString& VariableName) const override;
2626
virtual bool ResetToDefault_Implementation() override;
27-
virtual bool IsSetToDefaultValue_Implementation() const override;
28-
virtual FString GetDefaultValueAsString_Implementation() const override;
27+
virtual bool IsSetToDefaultValue_Implementation() const override;
28+
virtual FString GetDefaultValueAsString_Implementation() const override;
2929
//End UConfigProperty
3030

3131
private:

Mods/SML/Source/SML/Public/Configuration/Properties/ConfigPropertyClass.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ class SML_API UConfigPropertyClass : public UConfigProperty {
5050
virtual void Deserialize_Implementation(const URawFormatValue* RawValue) override;
5151
virtual FConfigVariableDescriptor CreatePropertyDescriptor_Implementation(UConfigGenerationContext* Context, const FString& OuterPath) const override;
5252
virtual void FillConfigStruct_Implementation(const FReflectedObject& ReflectedObject, const FString& VariableName) const override;
53-
virtual bool ResetToDefault_Implementation() override;
54-
virtual bool IsSetToDefaultValue_Implementation() const override;
55-
virtual FString GetDefaultValueAsString_Implementation() const override;
53+
virtual bool ResetToDefault_Implementation() override;
54+
virtual bool IsSetToDefaultValue_Implementation() const override;
55+
virtual FString GetDefaultValueAsString_Implementation() const override;
5656
//End UConfigProperty
5757

5858
private:

Mods/SML/Source/SML/Public/Configuration/Properties/ConfigPropertyFloat.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ class SML_API UConfigPropertyFloat : public UConfigProperty {
2323
virtual void Deserialize_Implementation(const URawFormatValue* Value) override;
2424
virtual FConfigVariableDescriptor CreatePropertyDescriptor_Implementation(UConfigGenerationContext* Context, const FString& OuterPath) const override;
2525
virtual void FillConfigStruct_Implementation(const FReflectedObject& ReflectedObject, const FString& VariableName) const override;
26-
virtual bool ResetToDefault_Implementation() override;
27-
virtual bool IsSetToDefaultValue_Implementation() const override;
28-
virtual FString GetDefaultValueAsString_Implementation() const override;
26+
virtual bool ResetToDefault_Implementation() override;
27+
virtual bool IsSetToDefaultValue_Implementation() const override;
28+
virtual FString GetDefaultValueAsString_Implementation() const override;
2929
//End UConfigProperty
3030

3131
private:

Mods/SML/Source/SML/Public/Configuration/Properties/ConfigPropertyInteger.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ class SML_API UConfigPropertyInteger : public UConfigProperty {
2323
virtual void Deserialize_Implementation(const URawFormatValue* Value) override;
2424
virtual FConfigVariableDescriptor CreatePropertyDescriptor_Implementation(UConfigGenerationContext* Context, const FString& OuterPath) const override;
2525
virtual void FillConfigStruct_Implementation(const FReflectedObject& ReflectedObject, const FString& VariableName) const override;
26-
virtual bool ResetToDefault_Implementation() override;
27-
virtual bool IsSetToDefaultValue_Implementation() const override;
28-
virtual FString GetDefaultValueAsString_Implementation() const override;
26+
virtual bool ResetToDefault_Implementation() override;
27+
virtual bool IsSetToDefaultValue_Implementation() const override;
28+
virtual FString GetDefaultValueAsString_Implementation() const override;
2929
//End UConfigProperty
3030

3131
private:

Mods/SML/Source/SML/Public/Configuration/Properties/ConfigPropertyString.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ class SML_API UConfigPropertyString : public UConfigProperty {
2323
virtual void Deserialize_Implementation(const URawFormatValue* Value) override;
2424
virtual FConfigVariableDescriptor CreatePropertyDescriptor_Implementation(UConfigGenerationContext* Context, const FString& OuterPath) const override;
2525
virtual void FillConfigStruct_Implementation(const FReflectedObject& ReflectedObject, const FString& VariableName) const override;
26-
virtual bool ResetToDefault_Implementation() override;
27-
virtual bool IsSetToDefaultValue_Implementation() const override;
28-
virtual FString GetDefaultValueAsString_Implementation() const override;
26+
virtual bool ResetToDefault_Implementation() override;
27+
virtual bool IsSetToDefaultValue_Implementation() const override;
28+
virtual FString GetDefaultValueAsString_Implementation() const override;
2929
//End UConfigProperty
3030

3131
private:

0 commit comments

Comments
 (0)