[FFmpeg-cvslog] udp: call av_fifo_space directly as needed.
Nicolas George
git at videolan.org
Thu Mar 22 18:40:46 CET 2012
ffmpeg | branch: master | Nicolas George <nicolas.george at normalesup.org> | Thu Mar 15 13:11:06 2012 +0100| [5deb5ccbbb556c4a15f3c7494f00de2963d0aba6] | committer: Nicolas George
udp: call av_fifo_space directly as needed.
The comment seemed to indicate that left was used
to limit the size of the recv, but it was not so.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5deb5ccbbb556c4a15f3c7494f00de2963d0aba6
---
libavformat/udp.c | 8 ++------
1 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/libavformat/udp.c b/libavformat/udp.c
index dad79ff..4a6cee2 100644
--- a/libavformat/udp.c
+++ b/libavformat/udp.c
@@ -332,13 +332,8 @@ static void *circular_buffer_task( void *_URLContext)
pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &old_cancelstate);
ff_socket_nonblock(s->udp_fd, 0);
while(1) {
- int left;
int len;
- /* How much do we have left to the end of the buffer */
- /* Whats the minimum we can read so that we dont comletely fill the buffer */
- left = av_fifo_space(s->fifo);
-
/* Blocking operations are always cancellation points;
see "General Information" / "Thread Cancelation Overview"
in Single Unix. */
@@ -353,7 +348,8 @@ static void *circular_buffer_task( void *_URLContext)
continue;
}
AV_WL32(s->tmp, len);
- if(left < len + 4) {
+
+ if(av_fifo_space(s->fifo) < len + 4) {
/* No Space left */
if (s->overrun_nonfatal) {
av_log(h, AV_LOG_WARNING, "Circular buffer overrun. "
More information about the ffmpeg-cvslog
mailing list