IN-14456: Exceptions after upgrading Input System to 1.4.2

EDIT: Submitted bug-report IN-14456

Unity 2019.4.20f1, Android, Input System 1.4.2

I upgraded the Input System package from 1.3.0 to 1.4.2 and now get the following exceptions every time I stop play mode. According to the stacktrace, it’s all coming from the Input System itself and not from user scripts.

How can I fix it?

NullReferenceException while resolving binding 'Move:<Gamepad>/leftStick[;Gamepad]' in action map 'InputActions (UnityEngine.InputSystem.InputActionAsset):Player'
UnityEngine.InputSystem.PlayerInput:OnDisable() (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Plugins/PlayerInput/PlayerInput.cs:1735)
NullReferenceException: Object reference not set to an instance of an object
UnityEngine.InputSystem.InputBindingResolver.InstantiateWithParameters[TType] (UnityEngine.InputSystem.Utilities.TypeTable registrations, System.String namesAndParameters, TType[]& array, System.Int32& count, UnityEngine.InputSystem.InputActionMap actionMap, UnityEngine.InputSystem.InputBinding& binding) (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputBindingResolver.cs:638)
UnityEngine.InputSystem.InputBindingResolver.AddActionMap (UnityEngine.InputSystem.InputActionMap actionMap) (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputBindingResolver.cs:304)
UnityEngine.InputSystem.PlayerInput:OnDisable() (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Plugins/PlayerInput/PlayerInput.cs:1735)
NullReferenceException: Object reference not set to an instance of an object
UnityEngine.InputSystem.InputBindingResolver.InstantiateWithParameters[TType] (UnityEngine.InputSystem.Utilities.TypeTable registrations, System.String namesAndParameters, TType[]& array, System.Int32& count, UnityEngine.InputSystem.InputActionMap actionMap, UnityEngine.InputSystem.InputBinding& binding) (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputBindingResolver.cs:638)
UnityEngine.InputSystem.InputBindingResolver.AddActionMap (UnityEngine.InputSystem.InputActionMap actionMap) (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputBindingResolver.cs:592)
UnityEngine.InputSystem.InputActionMap.ResolveBindings () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputActionMap.cs:1352)
UnityEngine.InputSystem.InputActionMap.ResolveBindingsIfNecessary () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputActionMap.cs:1217)
UnityEngine.InputSystem.InputActionState.DeferredResolutionOfBindings () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputActionState.cs:4449)
UnityEngine.InputSystem.InputActionRebindingExtensions+DeferBindingResolutionWrapper.Dispose () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputActionRebindingExtensions.cs:2807)
UnityEngine.InputSystem.PlayerInput.OnDisable () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Plugins/PlayerInput/PlayerInput.cs:1735)
ArgumentNullException: Value cannot be null.
Parameter name: source
System.Linq.Enumerable.Contains[TSource] (System.Collections.Generic.IEnumerable`1[T] source, TSource value, System.Collections.Generic.IEqualityComparer`1[T] comparer) (at <351e49e2a5bf4fd6beabb458ce2255f3>:0)
System.Linq.Enumerable.Contains[TSource] (System.Collections.Generic.IEnumerable`1[T] source, TSource value) (at <351e49e2a5bf4fd6beabb458ce2255f3>:0)
UnityEngine.InputSystem.InputActionState.FetchActionState (UnityEngine.InputSystem.InputAction action) (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputActionState.cs:887)
UnityEngine.InputSystem.InputAction.get_currentState () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputAction.cs:1492)
UnityEngine.InputSystem.InputAction.get_phase () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputAction.cs:508)
UnityEngine.InputSystem.InputAction.get_enabled () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputAction.cs:533)
UnityEngine.InputSystem.InputAction.Disable () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Actions/InputAction.cs:887)
UnityEngine.InputSystem.UI.InputSystemUIInputModule.DisableInputAction (UnityEngine.InputSystem.InputActionReference inputActionReference) (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Plugins/UI/InputSystemUIInputModule.cs:1499)
UnityEngine.InputSystem.UI.InputSystemUIInputModule.DisableAllActions () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Plugins/UI/InputSystemUIInputModule.cs:1453)
UnityEngine.InputSystem.UI.InputSystemUIInputModule.OnDisable () (at Library/PackageCache/com.unity.inputsystem@1.4.1/InputSystem/Plugins/UI/InputSystemUIInputModule.cs:1404)
1 Like

I’m getting the same errors except the last one on my project. Started happening when I upgraded to 2020.3.38 from 2020.3.37, and only when I exit play mode. My input system is on 1.4.2.
I think this might be a bug.

1 Like

@unity_hakan @Rene-Damm Here is the bug-report for this issue: IN-14456

1 Like

Downgrading to 1.3.0 of the input system seems to be the work around for the time being

Yes, same issue here. Downgrading resolves the issues as well. If any more data is required to solve the issue, please let me know and I will provide what I have in addition to Peter77’s report.

How do you downgrade a package?

In the package manager, click the foldout arrow next to “Input System” and click on “See other versions” 1.3.0 should me in the extended list of versions.
8385024--1105944--upload_2022-8-23_17-32-26.png

That button is absent in 2021.3.8f1. Apparently they did this to “ensure stability” or some crap. What is happening to Unity? I haven’t had this many problems in ten years.

1 Like

Damn, that’s strange, I’m on 2020.3. Guess I won’t be updating to 2021 any time soon if that’s true

Completely nonsensical thought process for this change (imo) ESPECIALLY with this Input System 1.4.1/1.4.2 regression fiasco. I hope they revert this decision.
8385063--1105953--upload_2022-8-23_17-41-2.png

1 Like

Ah ha! I edited manifest.json and changed “com.unity.inputsystem”: “1.4.2” to “com.unity.inputsystem”: “1.3.0”.

It works flawlessly now.

2 Likes

How do you do that loool, I’m stuck on the same problem

Inside the Project Folder/Packages/manifest.json
Just edit with Notepad.

1 Like

my character moves alone with imput system 1.4.2 if you use the keyboard it seems that when I release the WASD or arrow keys don’t execute the cancel phase

Check the latest update thread for the Input System a lot of other people are saying the same thing

Thanks

Thanks

Can you tell me if there is a chance that this bug will be fixed?
Stable reproduces in version 1.4.3.

1 Like

Having this issue as well. Exact same series of errors. Would be nice to hear if it’s being addressed.

1 Like

InputSystem 1.4.4 does not seem to throw these errors anymore.

1 Like