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-07 01:00:02 +0100
commit3f2715804019a963bdd4e7fe7aafbd5e72aba0f5 (patch)
tree64f5dfe5ab2dead984f552791e6c43aacf090fc4
parentc459c7b23efffab762560e41ad6a2c0dbbfd4915 (diff)
downloadffmpeg-3f2715804019a963bdd4e7fe7aafbd5e72aba0f5.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 e28cc636b4..cd7dc5a814 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -2280,7 +2280,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);