Ensure condition failed: ValueSharedPtr->GetValue(Value) == FPropertyAccess::Success [File:D:\build\++UE5\Sync\Engine\Source\Editor\DetailCustomizations\Private\RangeStructCustomization.cpp] [Line: 282]

We noticed this in some C++ actor classes we created and checked against the 5.8 version we are currently updating to and it ended up happening 100% of the time there as well

The simplest fix we have found is to remove the 2 ensures in OnGetValue, since the failthrough cases will still return back a proper TOptional, but we figured we would raise the issue since we are trying to minimize engine customizations

Steps to Reproduce
Create a new blank project

Create a new actor blueprint

Add a FloatRange variable and make it instance editable

Compile and save the blueprint

Add 2 instances of the blueprint in the level

Select each of them, notice the range is [0, 0], and select both and notice the same

Select one of them and change either bound

Select both of them and notice the ensure

Hi,

Agreed that those ensures are incorrect, there are a few others that should be removed as well (CustomizeHeader, OnQueryIfEnabled, ShouldAllowSpin). I’ll get that fix checked in and share a CL with you once it’s available. Note that the fix will be in the UE6 branch, but you could still cherrypick it back to avoid future integration headaches.

Best,

Cody

Hi,

That fix should be checked in now at CL#57603974. Thanks for the report!