[FFmpeg-cvslog] lavc: Fix use of uninitialized field.
Michael Niedermayer
git at videolan.org
Fri Oct 12 00:26:42 CEST 2012
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri Oct 12 00:07:21 2012 +0200| [e0909ff1584dc90499409707c5f91bf6ce78b09e] | committer: Michael Niedermayer
lavc: Fix use of uninitialized field.
Fixes CID732297
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e0909ff1584dc90499409707c5f91bf6ce78b09e
---
libavcodec/utils.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 8b65976..166b3b4 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -1753,10 +1753,14 @@ int attribute_align_arg avcodec_decode_audio4(AVCodecContext *avctx,
/* many decoders assign whole AVFrames, thus overwriting extended_data;
* make sure it's set correctly; assume decoders that actually use
* extended_data are doing it correctly */
- planar = av_sample_fmt_is_planar(frame->format);
- channels = av_get_channel_layout_nb_channels(frame->channel_layout);
- if (!(planar && channels > AV_NUM_DATA_POINTERS))
- frame->extended_data = frame->data;
+ if (*got_frame_ptr) {
+ planar = av_sample_fmt_is_planar(frame->format);
+ channels = av_get_channel_layout_nb_channels(frame->channel_layout);
+ if (!(planar && channels > AV_NUM_DATA_POINTERS))
+ frame->extended_data = frame->data;
+ } else {
+ frame->extended_data = NULL;
+ }
return ret;
}
More information about the ffmpeg-cvslog
mailing list