--- a/volume.c +++ b/volume.c @@ -74,6 +74,9 @@ static void remove_all_mixers() { static Slider *add_slider(Mixer *m, int dev) { Slider *result,*s; if (dev < 0 || dev >= mixer_get_nr_devices(m->mixer)) return NULL; + for (s = m->Sliderz ; s != NULL; s = s->next) + if (s->dev == dev) + return s; result = malloc(sizeof(Slider)); result->mixer = m->mixer; result->parent = m;