[FFmpeg-cvslog] v4l2: do not assert on a value received from outside of Libav
Anton Khirnov
git at videolan.org
Mon Jan 14 14:23:53 CET 2013
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Tue Jan 8 08:04:59 2013 +0100| [49dc82eef776634ac2da41fca9f105df25129ad8] | committer: Anton Khirnov
v4l2: do not assert on a value received from outside of Libav
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=49dc82eef776634ac2da41fca9f105df25129ad8
---
libavdevice/v4l2.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/libavdevice/v4l2.c b/libavdevice/v4l2.c
index eb5de15..d57bd75 100644
--- a/libavdevice/v4l2.c
+++ b/libavdevice/v4l2.c
@@ -460,7 +460,12 @@ static int mmap_read_frame(AVFormatContext *ctx, AVPacket *pkt)
return AVERROR(errno);
}
- assert (buf.index < s->buffers);
+
+ if (buf.index >= s->buffers) {
+ av_log(ctx, AV_LOG_ERROR, "Invalid buffer index received.\n");
+ return AVERROR(EINVAL);
+ }
+
if (s->frame_size > 0 && buf.bytesused != s->frame_size) {
av_log(ctx, AV_LOG_ERROR,
"The v4l2 frame is %d bytes, but %d bytes are expected\n",
More information about the ffmpeg-cvslog
mailing list