Description

Reproduced 3/3 times. Issue also occurs in //UE5/Release-5.0 - CL 20979098 Binary. Confirmed NOT a Regression.

Steps to Reproduce
  1. Create a new C++ Project
  2. Create a new C++ Actor
  3. In the .h file, add the following with the other "#include"s:
#include "UObject/Object.h"
#include "Engine/DataTable.h"
  1. Above the UCLASS definition, paste the following:
USTRUCT(BlueprintType)
struct FTestMemberStruct : public FTableRowBase
{
    GENERATED_BODY()
public:
    UPROPERTY(BlueprintReadWrite, EditAnywhere)
        bool bMyBool;
    UPROPERTY(BlueprintReadWrite, EditAnywhere,
        meta = (EditCondition = "bMyBool==true", EditConditionHides))
        int32 MyInt;
    FTestMemberStruct()
    {
        bMyBool = false;
        MyInt = 0;
    }
};
USTRUCT(BlueprintType)
struct FTestArrayStruct : public FTableRowBase
{
    GENERATED_BODY()
public:
    UPROPERTY(BlueprintReadWrite, EditAnywhere)
        TArray<FTestMemberStruct> TestMemberArray;
    FTestArrayStruct()
    {
        TestMemberArray = TArray<FTestMemberStruct>();
    }
};
  1. Save .h file, and in the Editor click the recompile button (staircase looking button in the bottom right)
  2. Right-Click Content Browser and add Miscellaneous>Data Table
  3. Select "TestArrayStruct", and open new Data Table
  4. Click the "+ Add" button to add a new row
  5. In Row Editor, click the + button to add an array member to your new row
  6. Press the Trash Can to empty array

Actual Result: Crash

Expected Result: No Crash

Callstack
Assertion failed: ContainerPtr [File:D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Public\UObject\UnrealType.h] [Line: 676]
UnrealEditor_PropertyEditor!FStructurePropertyNode::GetValuePtrOfInstance() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\StructurePropertyNode.h:130]
UnrealEditor_PropertyEditor!FEditConditionContext::GetBoolValue() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\EditConditionContext.cpp:160]
UnrealEditor_PropertyEditor!ApplyBinary<bool,<lambda_b0a2b9d0aaf18bf7200377dd344b0425> >() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\EditConditionParser.cpp:267]
UnrealEditor_PropertyEditor!<lambda_417eba4eb6144e248eb898e448fbb106>::operator()() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Misc\ExpressionParserTypes.inl:142]
UnrealEditor_PropertyEditor!UE::Core::Private::Function::TFunctionRefCaller<<lambda_417eba4eb6144e248eb898e448fbb106>,TValueOrError<FExpressionNode,FExpressionError> __cdecl(FExpressionNode const &,FExpressionNode const &,IEditConditionContext const *)>::Cal() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Templates\Function.h:465]
UnrealEditor_PropertyEditor!TOperatorJumpTable<IEditConditionContext>::ExecBinary() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Misc\ExpressionParserTypes.inl:193]
UnrealEditor_PropertyEditor!TOperatorEvaluationEnvironment<IEditConditionContext>::ExecBinary() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Misc\ExpressionParserTypes.h:406]
UnrealEditor_Core!ExpressionParser::Evaluate() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Private\Misc\ExpressionParser.cpp:728]
UnrealEditor_PropertyEditor!FEditConditionParser::Evaluate() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\EditConditionParser.cpp:786]
UnrealEditor_PropertyEditor!FPropertyNode::IsEditConditionMet() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\PropertyNode.cpp:1035]
UnrealEditor_PropertyEditor!FDetailPropertyRow::GetPropertyVisibility() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\DetailPropertyRow.cpp:636]
UnrealEditor_PropertyEditor!FDetailItemNode::ComputeItemVisibility() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\DetailItemNode.cpp:730]
UnrealEditor_PropertyEditor!FDetailItemNode::Tick() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\DetailItemNode.cpp:715]
UnrealEditor_PropertyEditor!FDetailLayoutBuilderImpl::Tick() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\DetailLayoutBuilderImpl.cpp:883]
UnrealEditor_PropertyEditor!SDetailsViewBase::Tick() [D:\build\++UE5\Sync\Engine\Source\Editor\PropertyEditor\Private\SDetailsViewBase.cpp:1077]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1439]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_Slate!SBorder::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Layout\SBorder.cpp:129]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_Slate!SBorder::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Layout\SBorder.cpp:129]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SOverlay::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SOverlay.cpp:200]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_Slate!SSplitter::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Layout\SSplitter.cpp:253]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SOverlay::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SOverlay.cpp:200]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_Slate!SBorder::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Layout\SBorder.cpp:129]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SOverlay::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SOverlay.cpp:200]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_Slate!SSplitter::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Layout\SSplitter.cpp:253]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SOverlay::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SOverlay.cpp:200]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SPanel::PaintArrangedChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:31]
UnrealEditor_SlateCore!SPanel::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SPanel.cpp:12]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SOverlay::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SOverlay.cpp:200]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SCompoundWidget::OnPaint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SCompoundWidget.cpp:46]
UnrealEditor_SlateCore!SWidget::Paint() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWidget.cpp:1546]
UnrealEditor_SlateCore!SWindow::PaintSlowPath() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWindow.cpp:2074]
UnrealEditor_SlateCore!FSlateInvalidationRoot::PaintInvalidationRoot() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\FastUpdate\SlateInvalidationRoot.cpp:402]
UnrealEditor_SlateCore!SWindow::PaintWindow() [D:\build\++UE5\Sync\Engine\Source\Runtime\SlateCore\Private\Widgets\SWindow.cpp:2108]
UnrealEditor_Slate!FSlateApplication::DrawWindowAndChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1115]
UnrealEditor_Slate!FSlateApplication::DrawWindowAndChildren() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1167]
UnrealEditor_Slate!FSlateApplication::PrivateDrawWindows() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1349]
UnrealEditor_Slate!FSlateApplication::DrawWindows() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1069]
UnrealEditor_Slate!FSlateApplication::TickAndDrawWidgets() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1636]
UnrealEditor_Slate!FSlateApplication::Tick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:1493]
UnrealEditor!FEngineLoop::Tick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5491]
UnrealEditor!GuardedMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:202]
UnrealEditor!GuardedMainWrapper() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:107]
UnrealEditor!LaunchWindowsStartup() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:244]
UnrealEditor!WinMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:282]
UnrealEditor!__scrt_common_main_seh() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-170907 in the post.

0
Login to Vote

Fixed
ComponentUE - Editor
Affects Versions5.1
Target Fix5.1.1
Fix Commit23288325
Release Commit23288325
CreatedNov 23, 2022
ResolvedNov 29, 2022
UpdatedDec 7, 2022