[FFmpeg-cvslog] avcodec/avpacket: clear side_data_elems
ffmpeg | branch: release/3.0 | Michael Niedermayer| Mon Sep 12 13:13:42 2016 +0200| [26a8fc1c00d58652ebcd5809e76eb5fc9b9e2a44] | committer: Michael Niedermayer avcodec/avpacket: clear side_data_elems Fixes null pointer dereference Found-by: 连一汉 Signed-off-by: Michael Niedermayer (cherry picked from commit 5e1bf9d8c0d2cdbbf17b06a5dfdf87a635b3203b) Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=26a8fc1c00d58652ebcd5809e76eb5fc9b9e2a44 --- libavcodec/avpacket.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index b2079f6..6de85de 100644 --- a/libavcodec/avpacket.c +++ b/libavcodec/avpacket.c @@ -184,6 +184,7 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) { pkt->data = NULL; pkt->side_data = NULL; +pkt->side_data_elems = 0; if (pkt->buf) { AVBufferRef *ref = av_buffer_ref(src->buf); if (!ref) @@ -193,9 +194,11 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) } else { DUP_DATA(pkt->data, src->data, pkt->size, 1, ALLOC_BUF); } -if (pkt->side_data_elems && dup) +if (src->side_data_elems && dup) { pkt->side_data = src->side_data; -if (pkt->side_data_elems && !dup) { +pkt->side_data_elems = src->side_data_elems; +} +if (src->side_data_elems && !dup) { return av_copy_packet_side_data(pkt, src); } return 0; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avcodec/avpacket: clear side_data_elems
ffmpeg | branch: release/3.1 | Michael Niedermayer| Mon Sep 12 13:13:42 2016 +0200| [c2087fc48b46ac478944b4e6c59ae2a3a05da0e1] | committer: Michael Niedermayer avcodec/avpacket: clear side_data_elems Fixes null pointer dereference Found-by: 连一汉 Signed-off-by: Michael Niedermayer (cherry picked from commit 5e1bf9d8c0d2cdbbf17b06a5dfdf87a635b3203b) Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c2087fc48b46ac478944b4e6c59ae2a3a05da0e1 --- libavcodec/avpacket.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index d70ee5d..bb0fc6c 100644 --- a/libavcodec/avpacket.c +++ b/libavcodec/avpacket.c @@ -199,6 +199,7 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) { pkt->data = NULL; pkt->side_data = NULL; +pkt->side_data_elems = 0; if (pkt->buf) { AVBufferRef *ref = av_buffer_ref(src->buf); if (!ref) @@ -208,9 +209,11 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) } else { DUP_DATA(pkt->data, src->data, pkt->size, 1, ALLOC_BUF); } -if (pkt->side_data_elems && dup) +if (src->side_data_elems && dup) { pkt->side_data = src->side_data; -if (pkt->side_data_elems && !dup) { +pkt->side_data_elems = src->side_data_elems; +} +if (src->side_data_elems && !dup) { return av_copy_packet_side_data(pkt, src); } return 0; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avcodec/avpacket: clear side_data_elems
ffmpeg | branch: release/2.8 | Michael Niedermayer| Mon Sep 12 13:13:42 2016 +0200| [175a95bfddc5a6fb69d329e24fd7157a2e1f2099] | committer: Michael Niedermayer avcodec/avpacket: clear side_data_elems Fixes null pointer dereference Found-by: 连一汉 Signed-off-by: Michael Niedermayer (cherry picked from commit 5e1bf9d8c0d2cdbbf17b06a5dfdf87a635b3203b) Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=175a95bfddc5a6fb69d329e24fd7157a2e1f2099 --- libavcodec/avpacket.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index 35adb86..bf168be 100644 --- a/libavcodec/avpacket.c +++ b/libavcodec/avpacket.c @@ -195,6 +195,7 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) { pkt->data = NULL; pkt->side_data = NULL; +pkt->side_data_elems = 0; if (pkt->buf) { AVBufferRef *ref = av_buffer_ref(src->buf); if (!ref) @@ -209,9 +210,11 @@ FF_DISABLE_DEPRECATION_WARNINGS pkt->destruct = dummy_destruct_packet; FF_ENABLE_DEPRECATION_WARNINGS #endif -if (pkt->side_data_elems && dup) +if (src->side_data_elems && dup) { pkt->side_data = src->side_data; -if (pkt->side_data_elems && !dup) { +pkt->side_data_elems = src->side_data_elems; +} +if (src->side_data_elems && !dup) { return av_copy_packet_side_data(pkt, src); } return 0; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
[FFmpeg-cvslog] avcodec/avpacket: clear side_data_elems
ffmpeg | branch: master | Michael Niedermayer| Mon Sep 12 13:13:42 2016 +0200| [5e1bf9d8c0d2cdbbf17b06a5dfdf87a635b3203b] | committer: Michael Niedermayer avcodec/avpacket: clear side_data_elems Fixes null pointer dereference Found-by: 连一汉 Signed-off-by: Michael Niedermayer > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5e1bf9d8c0d2cdbbf17b06a5dfdf87a635b3203b --- libavcodec/avpacket.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libavcodec/avpacket.c b/libavcodec/avpacket.c index fa2844d..a485064 100644 --- a/libavcodec/avpacket.c +++ b/libavcodec/avpacket.c @@ -198,6 +198,7 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) { pkt->data = NULL; pkt->side_data = NULL; +pkt->side_data_elems = 0; if (pkt->buf) { AVBufferRef *ref = av_buffer_ref(src->buf); if (!ref) @@ -207,9 +208,11 @@ static int copy_packet_data(AVPacket *pkt, const AVPacket *src, int dup) } else { DUP_DATA(pkt->data, src->data, pkt->size, 1, ALLOC_BUF); } -if (pkt->side_data_elems && dup) +if (src->side_data_elems && dup) { pkt->side_data = src->side_data; -if (pkt->side_data_elems && !dup) { +pkt->side_data_elems = src->side_data_elems; +} +if (src->side_data_elems && !dup) { return av_copy_packet_side_data(pkt, src); } return 0; ___ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog