--- ./src/control/control.c.old Sun May 18 16:53:36 2003 +++ ./src/control/control.c Sun May 18 16:55:59 2003 @@ -1699,10 +1699,10 @@ assert(obj); if (obj->access & SNDRV_CTL_ELEM_ACCESS_DINDIRECT) return 0; /* FIXME: implement indirect access as well */ - for (i = 3; i >= 0; i++) - if (obj->dimen.d[0]) - break; - return i >= 0 ? i + 1 : 0; + for (i = 3; i >= 0; i--) + if (obj->dimen.d[i]) + return(i+1); + return 0; } use_default_symbol_version(__snd_ctl_elem_info_get_dimensions, snd_ctl_elem_info_get_dimensions, ALSA_0.9.3);