Search Issue Tracker
Fixed in 7.4.0
Votes
0
Found in [Package]
7.0.0, 7.1.8, 7.2.1, 7.3.1, 8.0.1
Issue ID
1234725
Regression
No
[HDRP] ArgumentNullException thrown on removing "Empty Environment" after Undo operation is performed on it earlier
When the "Empty Environment" is added to "Environment Library" in the "Look Dev" window and Undo operation is performed, after removing same environment causes editor to throw ArgumentNullException in the Console, Refer attached video
Steps to repro:
1. Create a new project with HDRP Template
2. Window > Render Pipeline > Look Dev
3. Select the "Environment" tab > New Library > Load Library
4. Add new empty environment ()
5. Edit > Undo Remove Environment
6. Remove Empty Environment (-)
Actual Result:
ArgumentNullException thrown on Removing "Empty Environment" under "Environment Library" when Undo operation is already performed
Expected Result:
"Empty Environment" gets removed gracefully
Note: "Look Dev" window is introduced in Unity 2019.3.0a12
Reproducible in:
2020.2.0a7, 2020.1.0b5, 2019.3.8f1, 2019.3.0a12
Package version found: 8.0.1, 7.3.1, 7.2.1, 7.1.8, 7.1.1, 7.0.0
Environment:
Windows 10 and macOS 10.14
Stack trace:
ArgumentNullException: Value cannot be null.
Parameter name: objectToUndo
UnityEditor.Undo.DestroyObjectImmediate (UnityEngine.Object objectToUndo) (at <92f998fbb4ca4d8dab7793d6e003b794>:0)
UnityEditor.Rendering.LookDev.EnvironmentLibrary.Remove (System.Int32 index) (at Library/PackageCache/com.unity.render-pipelines.core@8.0.1/Editor/LookDev/EnvironmentLibrary.cs:60)
UnityEditor.Rendering.LookDev.DisplayWindow.<CreateEnvironment>b__39_8 () (at Library/PackageCache/com.unity.render-pipelines.core@8.0.1/Editor/LookDev/DisplayWindow.EnvironmentLibrarySidePanel.cs:161)
UnityEngine.UIElements.Clickable.Invoke (UnityEngine.UIElements.EventBase evt) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.Clickable.ProcessUpEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.Vector2 localPosition, System.Int32 pointerId) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.Clickable.OnMouseUp (UnityEngine.UIElements.MouseUpEvent evt) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventCallbackFunctor`1[TEventType].Invoke (UnityEngine.UIElements.EventBase evt) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventCallbackRegistry.InvokeCallbacks (UnityEngine.UIElements.EventBase evt) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.CallbackEventHandler.HandleEvent (UnityEngine.UIElements.EventBase evt) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.CallbackEventHandler.HandleEventAtTargetPhase (UnityEngine.UIElements.EventBase evt) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.MouseCaptureDispatchingStrategy.DispatchEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventDispatcher.ApplyDispatchingStrategies (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel, System.Boolean imguiEventIsInitiallyUsed) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEventQueue () (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventDispatcher.OpenGate () (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventDispatcherGate.Dispose () (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.EventDispatcher.Dispatch (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel, UnityEngine.UIElements.DispatchMode dispatchMode) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.BaseVisualElementPanel.SendEvent (UnityEngine.UIElements.EventBase e, UnityEngine.UIElements.DispatchMode dispatchMode) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.UIElementsUtility.DoDispatch (UnityEngine.UIElements.BaseVisualElementPanel panel) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.UIElementsUtility.UnityEngine.UIElements.IUIElementsUtility.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr, System.Boolean& eventHandled) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.UIEventRegistration.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.UIElements.UIEventRegistration<>c.<.cctor>b__1_2 (System.Int32 i, System.IntPtr ptr) (at <e40488dcb2e3475fad9ef37a4468eea0>:0)
UnityEngine.GUIUtility.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr, System.Boolean& result) (at <faa31f22dbbe43159226eb3a4f009ff2>:0)
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
- Out-of-bounds memory access with multiple CanvasRenderers under a Canvas when using Mesh API
- Inspector tries to access file after it was deleted when the file was locked in Inspector window
- Changing Transform values in Search window Inspector loses focus while dragging and stopping mouse without releasing dragging action
- Saving changes on the dirty VFX Graph during the Play mode throws "The referenced script (Unknown) on this Behaviour is missing!" warnings
- VFX Graph Debug Info overlaps the "Initialize" block debug info by default
Resolution Note (fix version 7.4.0):
Verified in PR ✔