mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 06:54:49 +00:00
avtpsrc: Retry receive with same buffer size
Without this patch in case of a retry recv() will be called with a negative size argument. Signed-off-by: Timo Wischer <timo.wischer@de.bosch.com> Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1078>
This commit is contained in:
parent
1d833eba60
commit
20b87e39e9
1 changed files with 3 additions and 2 deletions
|
@ -272,6 +272,7 @@ gst_avtp_src_fill (GstPushSrc * pushsrc, GstBuffer * buffer)
|
||||||
GstMapInfo map;
|
GstMapInfo map;
|
||||||
gsize buffer_size;
|
gsize buffer_size;
|
||||||
ssize_t n = MAX_AVTPDU_SIZE;
|
ssize_t n = MAX_AVTPDU_SIZE;
|
||||||
|
ssize_t received = -1;
|
||||||
GstAvtpSrc *avtpsrc = GST_AVTP_SRC (pushsrc);
|
GstAvtpSrc *avtpsrc = GST_AVTP_SRC (pushsrc);
|
||||||
|
|
||||||
buffer_size = gst_buffer_get_size (buffer);
|
buffer_size = gst_buffer_get_size (buffer);
|
||||||
|
@ -290,8 +291,8 @@ gst_avtp_src_fill (GstPushSrc * pushsrc, GstBuffer * buffer)
|
||||||
|
|
||||||
retry:
|
retry:
|
||||||
errno = 0;
|
errno = 0;
|
||||||
n = recv (avtpsrc->sk_fd, map.data, n, 0);
|
received = recv (avtpsrc->sk_fd, map.data, n, 0);
|
||||||
if (n < 0) {
|
if (received < 0) {
|
||||||
if (errno == EINTR) {
|
if (errno == EINTR) {
|
||||||
goto retry;
|
goto retry;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue