mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-10-02 08:42:32 +00:00
plugins/elements/: Also retry our poll_wait when we get EAGAIN. Fixes #524041.
Original commit message from CVS: * plugins/elements/gstfdsink.c: (gst_fd_sink_render): * plugins/elements/gstfdsrc.c: (gst_fd_src_create): Also retry our poll_wait when we get EAGAIN. Fixes #524041.
This commit is contained in:
parent
60da0d3654
commit
4b608cc1f1
3 changed files with 8 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2008-03-24 Wim Taymans <wim.taymans@collabora.co.uk>
|
||||||
|
|
||||||
|
* plugins/elements/gstfdsink.c: (gst_fd_sink_render):
|
||||||
|
* plugins/elements/gstfdsrc.c: (gst_fd_src_create):
|
||||||
|
Also retry our poll_wait when we get EAGAIN. Fixes #524041.
|
||||||
|
|
||||||
2008-03-24 Wim Taymans <wim.taymans@collabora.co.uk>
|
2008-03-24 Wim Taymans <wim.taymans@collabora.co.uk>
|
||||||
|
|
||||||
* plugins/elements/gstmultiqueue.c: (single_queue_overrun_cb),
|
* plugins/elements/gstmultiqueue.c: (single_queue_overrun_cb),
|
||||||
|
|
|
@ -233,7 +233,7 @@ again:
|
||||||
GST_DEBUG_OBJECT (fdsink, "going into select, have %d bytes to write",
|
GST_DEBUG_OBJECT (fdsink, "going into select, have %d bytes to write",
|
||||||
size);
|
size);
|
||||||
retval = gst_poll_wait (fdsink->fdset, GST_CLOCK_TIME_NONE);
|
retval = gst_poll_wait (fdsink->fdset, GST_CLOCK_TIME_NONE);
|
||||||
} while (retval == -1 && errno == EINTR);
|
} while (retval == -1 && (errno == EINTR || errno == EAGAIN));
|
||||||
|
|
||||||
if (retval == -1) {
|
if (retval == -1) {
|
||||||
if (errno == EBUSY)
|
if (errno == EBUSY)
|
||||||
|
|
|
@ -342,7 +342,7 @@ gst_fd_src_create (GstPushSrc * psrc, GstBuffer ** outbuf)
|
||||||
#ifndef HAVE_WIN32
|
#ifndef HAVE_WIN32
|
||||||
do {
|
do {
|
||||||
retval = gst_poll_wait (src->fdset, GST_CLOCK_TIME_NONE);
|
retval = gst_poll_wait (src->fdset, GST_CLOCK_TIME_NONE);
|
||||||
} while (retval == -1 && errno == EINTR);
|
} while (retval == -1 && (errno == EINTR || errno == EAGAIN)); /* retry if interrupted */
|
||||||
|
|
||||||
if (retval == -1) {
|
if (retval == -1) {
|
||||||
if (errno == EBUSY)
|
if (errno == EBUSY)
|
||||||
|
|
Loading…
Reference in a new issue