diff --git a/ChangeLog b/ChangeLog index 674ca71c23..a9847c1fbb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2004-03-13 Ronald Bultje + + * ext/alsa/gstalsa.c: (gst_alsa_class_probe_devices): + * sys/oss/gstosselement.c: (gst_osselement_class_probe_devices): + Don't block during probing... + 2004-03-12 Ronald Bultje * ext/alsa/gstalsa.c: (gst_alsa_get_type), (gst_alsa_class_init), diff --git a/ext/alsa/gstalsa.c b/ext/alsa/gstalsa.c index d5e03278f8..42a402057d 100644 --- a/ext/alsa/gstalsa.c +++ b/ext/alsa/gstalsa.c @@ -348,7 +348,8 @@ gst_alsa_class_probe_devices (GstAlsaClass *klass, for (num = 0; num < MAX_DEVICES; num++) { dev = g_strdup_printf ("hw:%d", num); - if (!(res = snd_pcm_open (&pcm, dev, 0, 0))) { + if (!(res = snd_pcm_open (&pcm, dev, 0, SND_PCM_NONBLOCK)) || + res == -EBUSY) { klass->devices = g_list_append (klass->devices, dev); snd_pcm_close (pcm);