Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhang Rui <bbcallen@gmail.com>2015-07-14 09:47:26 +0300
committerMichael Niedermayer <michael@niedermayer.cc>2015-07-14 18:28:55 +0300
commitfcbea93cf8777bbef2a393d26942b5d3c70a448d (patch)
tree4550cdd70a30c63e9ec97ba22f18116080f49d9d /libavutil/fifo.c
parent6e80fe1ecd984a59bb6c73cbb436cc06536b7728 (diff)
avutil/fifo: Fix the case where func() returns less bytes than requested in av_fifo_generic_write()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavutil/fifo.c')
-rw-r--r--libavutil/fifo.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavutil/fifo.c b/libavutil/fifo.c
index 4ff3194c5f..f2fe93de75 100644
--- a/libavutil/fifo.c
+++ b/libavutil/fifo.c
@@ -129,7 +129,8 @@ int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size,
do {
int len = FFMIN(f->end - wptr, size);
if (func) {
- if (func(src, wptr, len) <= 0)
+ len = func(src, wptr, len);
+ if (len <= 0)
break;
} else {
memcpy(wptr, src, len);