PerformInteractiveRebinding "Assertion Failed" error?

Hi. I must be doing something wrong. When I rebind an action using my keyboard/mouse, it works just fine. When I rebind any action to any other action using a gamepad I get this error:

Assertion failed
UnityEngine.InputSystem.LowLevel.NativeInputRuntime/<>c__DisplayClass10_0:<set_onBeforeUpdate>b__0 (UnityEngineInternal.Input.NativeInputUpdateType)
UnityEngineInternal.Input.NativeInputSystem:NotifyBeforeUpdate (UnityEngineInternal.Input.NativeInputUpdateType)"

Here is my rebinding code. To be honest, I’m not completely sure how this works.

InputActionRebindingExtensions.RebindingOperation rebindingOperation;

protected override void StartRebind()
{
    // Disable the action we are rebinding.
    InputAction action = CurrentSelectionData;
    action.Disable();

    // "controls" is the instance of my generated C# class Input Action Asset.
    controls.Disable();

    if (userInputData.ControlScheme.Name == "Gamepad")
    {
        rebindingOperation = action.PerformInteractiveRebinding()
            .WithControlsExcluding("Keyboard")
            .WithControlsExcluding("Mouse")
            .WithCancelingThrough("<Keyboard>/escape")
            .OnMatchWaitForAnother(0.1f)
            .OnComplete(operation => RebindComplete(action, "Gamepad"))
            .OnCancel(operation => RebindComplete(action, "Gamepad"))
            .Start();
    }
    else
    {
        rebindingOperation = action.PerformInteractiveRebinding()
            .WithControlsExcluding("<Gamepad>")
            .WithCancelingThrough("<Keyboard>/escape")
            .OnMatchWaitForAnother(0.1f)
            .OnComplete(operation => RebindComplete(action, "Keyboard&Mouse"))
            .OnCancel(operation => RebindComplete(action, "Keyboard&Mouse"))
            .Start();
    }

    // Display that we are waiting for an input...
    CurrentChoice.ChoiceUI.Disable();
    CurrentChoice.ChoiceUI.SetText("awaiting input..");
}

Any notes? Anything helps, really. Thanks in advance.

Bump. Any ideas? Am I performing a rebind correctly? I can’t find anything online about this issue.