$NetBSD: patch-ab,v 1.12 2000/09/01 15:58:37 toshii Exp $ --- src/mixer.c.orig Mon Jul 24 07:25:50 2000 +++ src/mixer.c Fri Sep 1 21:42:16 2000 @@ -265,6 +265,17 @@ mixer_devinfo_t *infos; mixer_ctrl_t *values; +char * +catstr(char *p, char *q) +{ + char *r = malloc(strlen(p) + strlen(q) + 2); + strcpy(r, p); + strcat(r, "."); + strcat(r, q); + return r; +} + + void mixer_init(gint init_device_id) { int fd, i, ndev; @@ -306,7 +317,12 @@ if (infos[i].type == AUDIO_MIXER_VALUE) { DeviceData *device = g_new0(DeviceData, 1); device->device_id = i; - device->device_name = infos[i].label.name; + if (0 <= infos[i].mixer_class && infos[i].mixer_class < ndev) + device->device_name = + catstr(infos[infos[i].mixer_class].label.name, + infos[i].label.name); + else + device->device_name = infos[i].label.name; device->stereo = 1; device->recordable = 0; device_list = g_list_append(device_list, device);