diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2003-01-10 06:51:37 +0000 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2003-01-10 06:51:37 +0000 |
commit | 4619b8cbd8205576e2d4effaf428f8497c4fff47 (patch) | |
tree | 61495bf847f11aeb6cbe2f4df3a52d2e3c802de6 /media-libs/gst-plugins | |
parent | new ebuild (diff) | |
download | gentoo-2-4619b8cbd8205576e2d4effaf428f8497c4fff47.tar.gz gentoo-2-4619b8cbd8205576e2d4effaf428f8497c4fff47.tar.bz2 gentoo-2-4619b8cbd8205576e2d4effaf428f8497c4fff47.zip |
New version
Diffstat (limited to 'media-libs/gst-plugins')
-rw-r--r-- | media-libs/gst-plugins/files/digest-gst-plugins-0.5.1 | 1 | ||||
-rw-r--r-- | media-libs/gst-plugins/files/gst-plugins-0.5.1-never-return-on-oss-busy.patch | 42 |
2 files changed, 43 insertions, 0 deletions
diff --git a/media-libs/gst-plugins/files/digest-gst-plugins-0.5.1 b/media-libs/gst-plugins/files/digest-gst-plugins-0.5.1 new file mode 100644 index 000000000000..7b15d641eb53 --- /dev/null +++ b/media-libs/gst-plugins/files/digest-gst-plugins-0.5.1 @@ -0,0 +1 @@ +MD5 1e41a9836681326798db2333d631fd38 gst-plugins-0.5.1.tar.gz 2664365 diff --git a/media-libs/gst-plugins/files/gst-plugins-0.5.1-never-return-on-oss-busy.patch b/media-libs/gst-plugins/files/gst-plugins-0.5.1-never-return-on-oss-busy.patch new file mode 100644 index 000000000000..9ec6a5545651 --- /dev/null +++ b/media-libs/gst-plugins/files/gst-plugins-0.5.1-never-return-on-oss-busy.patch @@ -0,0 +1,42 @@ +--- gst-plugins-0.5.0/sys/oss/gstosscommon.c.orig 2002-12-27 08:58:32.000000000 +0200 ++++ gst-plugins-0.5.0/sys/oss/gstosscommon.c 2002-12-27 09:01:44.000000000 +0200 +@@ -279,9 +279,23 @@ + GST_INFO (GST_CAT_PLUGIN_INFO, "common: attempting to open sound device"); + + /* first try to open the sound card */ +- /* FIXME: this code is dubious, why do we need to open and close this ?*/ ++ /* FIXME: This code is dubious, why do we need to open and close this ? ++ * For linux at least this causes the second open to never return ++ * if the device was already in use .. */ ++#ifndef __linux__ + if (mode == GST_OSSCOMMON_WRITE) { ++#endif + common->fd = open (common->device, O_WRONLY | O_NONBLOCK); ++#ifdef __linux__ ++ if (common->fd >= 0) { ++ /* remove the non-blocking flag */ ++ if(fcntl (common->fd, F_SETFL, 0) < 0) { ++ *error = g_strdup_printf ("osscommon: Can't make filedescriptor blocking for %s", ++ common->device); ++ return FALSE; ++ } ++ } ++#else + if (errno == EBUSY) { + g_warning ("osscommon: unable to open the sound device (in use ?)\n"); + } +@@ -295,9 +309,14 @@ + else { + common->fd = open (common->device, O_RDONLY); + } ++#endif + + if (common->fd < 0) { + switch (errno) { ++ case EBUSY: ++ *error = g_strdup_printf ("osscommon: Unable to open %s (in use ?)", ++ common->device); ++ break; + case EISDIR: + *error = g_strdup_printf ("osscommon: Device %s is a directory", + common->device); |