Search Issue Tracker

Active

Under Consideration for 2022.3.X, 2023.1.X, 2023.2.X

Votes

9

Found in

2023.1.0b1

Issue ID

UUM-3235

Regression

Yes

Adding and removing data from and to Serializable arrays with arrays in them throws errors and exceptions

--

-

Reproduction steps:
1. Open the attached project
2. Open Inspector
3. Select Cube in Hierarchy
4. Under Testing script add multiple layers of data and try to remove the same data

Expected result: No errors are thrown
Actual result: Different errors are thrown almost for every action

Reproducible with: 2022.2.0a9
Not reproducible with: 2022.2.0a8

Notes: there are two different errors, one about layout when adding new elements and one is an exception being thrown due to elements being removed

Error on adding element higher in depth:
Layout update is struggling to process current layout (consider simplifying to avoid recursive layout): VisualElement unity-panel-container (x:0.00, y:0.00, width:454.00, height:939.00) world rect: (x:0.00, y:0.00, width:454.00, height:939.00)
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

Examples of exceptions on removing elements:
First:
ObjectDisposedException: SerializedProperty pointList.Array.data\[0].pointList.Array.size has disappeared\!
UnityEditor.SerializedProperty.get_intValue () (at <06ca3c5658e740a9bcc6fb07c341ef04>:0)
UnityEditor.UIElements.Bindings.ListViewSerializedObjectBinding.Update () (at <2ffb7de365ad400a83c70a4ea2b91309>:0)
UnityEngine.UIElements.VisualTreeBindingsUpdater.UpdateBindings () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.VisualTreeBindingsUpdater.Update () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.VisualTreeUpdater.UpdateVisualTreePhase (UnityEngine.UIElements.VisualTreeUpdatePhase phase) (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.Panel.UpdateBindings () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.UIElementsUtility.UnityEngine.UIElements.IUIElementsUtility.UpdateSchedulers () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.UIEventRegistration.UpdateSchedulers () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEditor.RetainedMode.UpdateSchedulers () (at <2ffb7de365ad400a83c70a4ea2b91309>:0)

Second:
InvalidOperationException: The operation is not possible when moved past all properties (Next returned false)
UnityEditor.SerializedProperty.get_contentHash () (at <06ca3c5658e740a9bcc6fb07c341ef04>:0)
UnityEditor.UIElements.Bindings.SerializedObjectBindingToBaseField`2\[TValue,TField].Update () (at <2ffb7de365ad400a83c70a4ea2b91309>:0)
UnityEngine.UIElements.VisualTreeBindingsUpdater.UpdateBindings () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.VisualTreeBindingsUpdater.Update () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.VisualTreeUpdater.UpdateVisualTreePhase (UnityEngine.UIElements.VisualTreeUpdatePhase phase) (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.Panel.UpdateBindings () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.UIElementsUtility.UnityEngine.UIElements.IUIElementsUtility.UpdateSchedulers () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEngine.UIElements.UIEventRegistration.UpdateSchedulers () (at <42bf909ce99b4ceb9b0349fc9f8a1e37>:0)
UnityEditor.RetainedMode.UpdateSchedulers () (at <2ffb7de365ad400a83c70a4ea2b91309>:0)

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.