• Clemens Ladisch's avatar
    ALSA: control: fix numid conflict check for new controls · 7c733587
    Clemens Ladisch authored
    The purpose of the snd_ctl_hole_check() function is to find conflicts
    between the numerical IDs of the new control and those of any existing
    controls.  However, it would fail to detect an existing control whose
    count is smaller than the new control's count and whose interval of IDs
    is entirely contained in the interval of the new control's IDs.
    
    To fix this, use the correct formula to detect overlapping intervals,
    which happens to simplify the condition.
    
    This problem was not encountered so far because ALSA does not yet allow
    drivers to allocate specific control IDs.
    Signed-off-by: default avatarClemens Ladisch <clemens@ladisch.de>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    7c733587
control.c 39.5 KB