looking at the patch, I saw something in the code that made me sick:
char *audioAutoDetect(void)
{
[snip]
  char *driversFound[10];
[snip]
    return driversFound[0];
[snip]
}

can someone fix that broken code ?
that would be another nice janitorial task to check whether this kind of error exists somewhere else (I'd bet it does)
A+