Hi,

I'm trying the hwdep interface with poll().
looking for reasons why removal of USB-device caused bad MAGIC in hwdep.c,
I found this solution:

<PATCH>
--- alsa-driver-0.9.6/acore/hwdep.c     2003-07-30 01:01:23.000000000 +0200
+++ alsa-driver-0.9.6-patched/acore/hwdep.c     2003-09-04 17:45:59.000000000 
+0200
@@ -133,9 +133,14 @@
        set_current_state(TASK_RUNNING);
        remove_wait_queue(&hw->open_wait, &wait);
        if (err >= 0) {
+               err = snd_card_file_add(hw->card, file);
+               if (err < 0)
+                       return -ENODEV;
+
                file->private_data = hw;
                hw->used++;
        }
+
        up(&hw->open_mutex);
        return err;
 }
@@ -151,6 +156,7 @@
        }
        if (hw->used > 0)
                hw->used--;
+       snd_card_file_remove(hw->card, file);
        up(&hw->open_mutex);
        return -ENXIO;
 }
</PATCH>

Also in Web-CVS this part of the code seams not to have the snd_card_file* 
calls.
"It works for me" here. If it is correct, please apply!

regards,
Karsten



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to