From b98712c44a4202dbdf2ac12aeb4efd9dceb943bc Mon Sep 17 00:00:00 2001 From: Peter Workman Date: Tue, 2 Jun 2020 18:29:16 -0300 Subject: [PATCH] srtobject: continue polling or report error on failed receive fixes #1277 Part-of: --- ext/srt/gstsrtobject.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ext/srt/gstsrtobject.c b/ext/srt/gstsrtobject.c index c8cc4212e6..1db634c8c3 100644 --- a/ext/srt/gstsrtobject.c +++ b/ext/srt/gstsrtobject.c @@ -1264,6 +1264,17 @@ gst_srt_object_read (GstSRTObject * srtobject, len = srt_recvmsg (rsock, (char *) (data), size); + + if (len == SRT_ERROR) { + gint srt_errno = srt_getlasterror (NULL); + if (srt_errno == SRT_EASYNCRCV) { + continue; + } else { + g_set_error (error, GST_RESOURCE_ERROR, GST_RESOURCE_ERROR_READ, + "Failed to receive from SRT socket: %s", srt_getlasterror_str ()); + return -1; + } + } break; }