Search Issue Tracker
Fixed
Fixed in 2023.2.8f1, 2023.3.0b5
Votes
0
Found in
2023.2.3f1
2023.3.0a19
Issue ID
UUM-58855
Regression
Yes
[Error] Restoring an ARC externally throws an error
An error gets thrown in the console when restoring a dirty ARC asset that had been deleted externally.
Regression details
I could reproduce it on 2023.2.0b16 but not on 2023.2.0b10
Repro
- Create an ARC asset (Assets > Create > Audio > Audio Random Container).
- Open the ARC.
- Edit the volume of the ARC.
- Right-click on the ARC asset and select Reveal in Finder.
- Delete the ARC asset and its associated meta file.
- Switch back to Unity to update the editor with the deleted asset.
- Switch back to Finder and undo the deletion to restore the file.
- Switch back to Unity.
Expected: No errors in the Console.
Actual: Null reference error in the Console.
Note
I did not test editing other values than volume. Neither did I test whether this can occur with version control.
Stack trace
{code:java}
NullReferenceException: Object reference not set to an instance of an object
UnityEditor.AudioContainerWindow.OnVolumeChanged (UnityEngine.UIElements.ChangeEvent`1[T] evt) (at /Users/bokken/build/output/unity/unity/Editor/Mono/Audio/AudioContainerWindow.cs:473)
UnityEngine.UIElements.EventCallbackFunctor`1[TEventType].Invoke (UnityEngine.UIElements.EventBase evt) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Events/EventCallback.cs:64)
UnityEngine.UIElements.EventCallbackRegistry+DynamicCallbackList.Invoke (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.VisualElement target) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Events/EventCallbackRegistry.cs:228)
UnityEngine.UIElements.EventDispatchUtilities.HandleEvent_BubbleUpCallbacks (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.VisualElement element) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Events/EventDispatchUtilities.cs:385)
UnityEngine.UIElements.EventDispatchUtilities.HandleEventAcrossPropagationPath (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.VisualElement target, System.Boolean isCapturingTarget) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Events/EventDispatchUtilities.cs:183)
UnityEngine.UIElements.EventDispatchUtilities.PropagateEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.VisualElement target, System.Boolean isCapturingTarget) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Events/EventDispatchUtilities.cs:61)
UnityEngine.UIElements.EventDispatchUtilities.DefaultDispatch (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Events/EventDispatchUtilities.cs:564)
UnityEngine.UIElements.EventBase.Dispatch (UnityEngine.UIElements.BaseVisualElementPanel panel) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Events/EventBase.cs:110)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/EventDispatcher.cs:336)
UnityEngine.UIElements.EventDispatcher.Dispatch (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.BaseVisualElementPanel panel, UnityEngine.UIElements.DispatchMode dispatchMode) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/EventDispatcher.cs:200)
UnityEngine.UIElements.BaseVisualElementPanel.SendEvent (UnityEngine.UIElements.EventBase e, UnityEngine.UIElements.DispatchMode dispatchMode) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Panel.cs:567)
UnityEngine.UIElements.VisualElement.SendEvent (UnityEngine.UIElements.EventBase e) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/VisualElement.cs:1566)
UnityEngine.UIElements.BaseField`1[TValueType].set_value (TValueType value) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Controls/InputField/BaseField.cs:195)
UnityEngine.UIElements.BaseSlider`1[TValueType].set_value (TValueType value) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Controls/BaseSlider.cs:217)
UnityEngine.UIElements.BaseField`1[TValueType].SetValueWithoutValidation (TValueType newValue) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Controls/InputField/BaseField.cs:499)
UnityEditor.UIElements.Bindings.SerializedObjectBinding`1[TValue].AssignValueToField (TValue lastValue) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:1919)
UnityEditor.UIElements.Bindings.SerializedObjectBindingPropertyToBaseField`2[TProperty,TValue].SyncPropertyToField (UnityEngine.UIElements.INotifyValueChanged`1[T] c, UnityEditor.SerializedProperty p) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:1785)
UnityEditor.UIElements.Bindings.SerializedObjectBindingToBaseField`2[TValue,TField].OnPropertyValueChanged (UnityEditor.SerializedProperty currentPropertyIterator) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:1691)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext.DefaultOnPropertyChange (System.Object cookie, UnityEditor.SerializedProperty changedProp) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:764)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext+<>c.<RegisterBindingObject>b__48_0 (System.Object o, UnityEditor.SerializedProperty p) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:783)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext+TrackedValue.Update (UnityEditor.UIElements.Bindings.SerializedObjectBindingContext context, UnityEditor.SerializedProperty currentProp) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:611)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext+TrackedValues.Update (UnityEditor.UIElements.Bindings.SerializedObjectBindingContext context, UnityEditor.SerializedProperty currentProperty) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:719)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext.UpdateTrackedProperties () (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:835)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext.OnSerializedObjectChanged () (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:568)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext.UpdateRevision () (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:525)
UnityEditor.UIElements.Bindings.SerializedObjectBindingContext.UpdateIfNecessary (UnityEngine.UIElements.VisualElement element) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:548)
UnityEditor.UIElements.Bindings.SerializedObjectBindingBase.Update (UnityEngine.UIElements.BindingContext& context) (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/Bindings/BindingExtensions.cs:1305)
UnityEngine.UIElements.BindingUpdater.UpdateUI (UnityEngine.UIElements.BindingContext& context, UnityEngine.UIElements.CustomBinding customBinding) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Bindings/BindingUpdater.cs:191)
UnityEngine.UIElements.BindingUpdater.UpdateUI (UnityEngine.UIElements.BindingContext& context, UnityEngine.UIElements.Binding bindingObject) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Bindings/BindingUpdater.cs:123)
UnityEngine.UIElements.VisualTreeDataBindingsUpdater.Update () (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Bindings/VisualTreeDataBindingUpdater.cs:209)
UnityEngine.UIElements.VisualTreeUpdater.UpdateVisualTreePhase (UnityEngine.UIElements.VisualTreeUpdatePhase phase) (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/VisualTreeUpdater.cs:114)
UnityEngine.UIElements.Panel.UpdateDataBinding () (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/Panel.cs:1161)
UnityEngine.UIElements.UIElementsUtility.UnityEngine.UIElements.IUIElementsUtility.UpdateSchedulers () (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/UIElementsUtility.cs:275)
UnityEngine.UIElements.UIEventRegistration.UpdateSchedulers () (at /Users/bokken/build/output/unity/unity/Modules/UIElements/Core/UIElementsUtility.cs:105)
UnityEditor.RetainedMode.UpdateSchedulers () (at /Users/bokken/build/output/unity/unity/Modules/UIElementsEditor/RetainedMode.cs:55) {code}
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Gradient Editor window bottom-right gradient marker color is incorrect
- MaskField tooltips should only display Value when bound
- Reordering Enum Values in VFX Graph Uint Property expands the “Value” field
- Visual Effect Graph sample titles display in non-human-readable format
- UxmlNamespacePrefix does not apply when using UIBuilder documents
Resolution Note (fix version 2023.3.0b5):
Fixed issue where the editor window for the AudioRandomContainer asset would throw an error after restoring an asset with unsaved changes from outside the editor.
Resolution Note (fix version 2023.2.8f1):
Fixed issue where the editor window for the AudioRandomContainer asset would throw an error after restoring an asset with unsaved changes from outside the editor.