]> git.alsa-project.org Git - alsa-utils.git/commitdiff
applied Anders Semb Hermansen's patch
authorChristopher Lansdown <lansdoct@cs.alfred.edu>
Sun, 27 Jun 1999 22:17:37 +0000 (22:17 +0000)
committerChristopher Lansdown <lansdoct@cs.alfred.edu>
Sun, 27 Jun 1999 22:17:37 +0000 (22:17 +0000)
xamixer2/cinit.c
xamixer2/structs.h

index 3399917f0efb8173f3254df1b819a73edab8a9d4..7915c37491b2f165388ea4a176d1ca4648919b34 100644 (file)
@@ -51,7 +51,7 @@ int init_cards()
 {
        int i,j,k;
        int err;
-       void *handle;
+       snd_ctl_t *handle;
 
        cards = snd_cards();
        card = calloc(cards, sizeof(Card));
@@ -256,12 +256,13 @@ int misc_group_hack(Mixer *mixer, int index)
                        }
                                        
                mixer->group[index].element[idx].eid = mixer->group[index].group.pelements[idx];
-               if((err = snd_mixer_element_build(mixer->handle, 
-                                                 &mixer->group[index].element[idx])) < 0) {
-                       printf("Unable to read element %s!  ",
-                              mixer->group[index].group.pelements[idx].name);
-                       printf("Error: %s.\n", snd_strerror(err));
-               }
+               if(snd_mixer_element_has_control(&mixer->group[index].element[idx].eid))
+                       if((err = snd_mixer_element_build(mixer->handle, 
+                                                       &mixer->group[index].element[idx])) < 0) {
+                               printf("Unable to read element %s!  ",
+                                               mixer->group[index].group.pelements[idx].name);
+                               printf("Error: %s.\n", snd_strerror(err));
+                       }
 
                init_element_route(mixer->handle, 
                                   &mixer->group[index].routes[idx], 
index a8381f074ecae4edf476c0fada1e884e69532cce..4b019d2634cf5a946d25e4b748aa33b9069af901 100644 (file)
@@ -21,7 +21,7 @@ typedef struct _Group Group;
 struct _Mixer
 {
         int number; /* The number of the mixer device */
-        void *handle;
+        snd_mixer_t *handle;
         snd_mixer_info_t info; /* The info for the mixer */
         int cnum; /* The number of channels present */
         int snum; /* The number of mixer switches present */