aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-01-20 15:03:13 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-02-05 16:53:03 +0100
commitd3bec2473972ac68aef7e7c9340631dfbf84ffa7 (patch)
treef5f497e295597dfa722828ff0da3d06cb7c001c8
parent3ef1538121fa6daeb1767510f1d4ae2c306c9fec (diff)
downloadffmpeg-d3bec2473972ac68aef7e7c9340631dfbf84ffa7.tar.gz
h264: Only apply error concealment if theres a frame
Without any correctly decoded slices, there can be no frame. Fixes out of array reads Found-by: Rafaël Carré Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 60af6c3138dc501a647bc69b374d5d33d5d86ab5) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/h264.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 1152258fc5..da144db987 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -2351,7 +2351,7 @@ static int field_end(H264Context *h, int in_setup)
* past end by one (callers fault) and resync_mb_y != 0
* causes problems for the first MB line, too.
*/
- if (!FIELD_PICTURE)
+ if (!FIELD_PICTURE && h->current_slice)
ff_er_frame_end(s);
ff_MPV_frame_end(s);