Description

If a DataTable Asset is created with a Row Structure that contains a member variable of type Curve, the Editor will crash when attempting to open it while it has no rows. It will also crash when editing a populated DataTable and deselecting all rows. The crash will not happen if the option "Editor Preferences – Content Editors – Curve Editor – Curve Editor – Auto Frame Curve Editor" is turned off.

The crash happens at [Engine\Source\Editor\UnrealEd\Private\SCurveEditor.cpp:2699], in function SCurveEditor::ZoomToFitVertical(). It appears that the Data Table Row Editor attempts to autofit a curve which is actually a null pointer. This null pointer comes from [Engine\Source\Editor\DetailCustomizations\Private\CurveStructCustomization.cpp:115], in function FCurveStructCustomization::CustomizeHeader().

Steps to Reproduce
  • Open The Editor on any map
  • Create a Structure Asset and add a variable of type Curve
  • Create a DataTable Asset and pick the structure above for the rows
  • Save both assets before continuing
  • Open the DataTable Asset. The Editor will crash.
  • Restart the Editor
  • Disable "Editor Preferences – Content Editors – Curve Editor – Curve Editor – Auto Frame Curve Editor"
  • Open the DataTable Asset. The Editor will not crash.
  • Add a new row and select it.
  • Reenable the option "Auto Frame Curve Editor" on the Editor Preferences
  • On the Data Table Editor, deselect the row. The Editor will crash.

Have Comments or More Details?

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

4
Login to Vote

Fixed
ComponentUE - Editor - Workflow Systems
Affects Versions5.3
Target Fix5.4
Fix Commit29653818
Main Commit29653826
CreatedNov 9, 2023
ResolvedNov 10, 2023
UpdatedMay 6, 2024