pcm: direct plugins - fix bad memory access when channel bindings do not match hw
pcm: direct plugins - fix bad memory access when channel bindings do not match hw

Fix and cleanup snd_pcm_direct_check_interleave() function.
Add requested / hardware channel check and use goto when the interleaved

Fixes: https://github.com/alsa-project/alsa-lib/issues/117
Signed-off-by: Jaroslav Kysela <72edd5e1a572f82f059ccbb83c92b74d6cb051ff@perex.cz>

alsa-project/alsa-lib,tiwai/alsa-lib,tiwai/alsa-lib,tiwai/alsa-lib,alsa-project/alsa-lib,tiwai/alsa-lib,alsa-project/alsa-lib,alsa-project/alsa-lib