summaryrefslogtreecommitdiff
path: root/libavcodec/h264.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2008-09-18 15:13:15 +0000
committerMichael Niedermayer <michaelni@gmx.at>2008-09-18 15:13:15 +0000
commitd464bceff2c9a9106f81c5c060596a92dfbb7fad (patch)
treed022754a27147fc147b80a0b5831f089797b4ff9 /libavcodec/h264.c
parent3a9a15c4f317034da562191845ab660b7e76b81d (diff)
Ensure that extradata is not parsed twice.
Fixes FRExt1_Panasonic. Originally committed as revision 15361 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h264.c')
-rw-r--r--libavcodec/h264.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 758d8f576e..30cf9652c2 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -7547,9 +7547,10 @@ static int decode_frame(AVCodecContext *avctx,
h->got_avcC = 1;
}
- if(avctx->frame_number==0 && !h->is_avc && s->avctx->extradata_size){
+ if(!h->got_avcC && !h->is_avc && s->avctx->extradata_size){
if(decode_nal_units(h, s->avctx->extradata, s->avctx->extradata_size) < 0)
return -1;
+ h->got_avcC = 1;
}
buf_index=decode_nal_units(h, buf, buf_size);