aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-04-08 22:18:35 +0200
committerMichael Niedermayer <michaelni@gmx.at>2015-04-11 22:01:46 +0200
commitb4bfbbfb95ac7f9beba726850d283b997ecc46ec (patch)
treea4633a04acd40c710270f9aa171b1b30802b0fc3
parente6d9094fd3c608e2c2f38ae368dc79fa0eda5d6f (diff)
downloadffmpeg-b4bfbbfb95ac7f9beba726850d283b997ecc46ec.tar.gz
avcodec/h264_ps: Move truncation check from VUI to SPS
This more completely checks for truncation Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 32e06c485be94a4967bff87022cbb065d3cbfd0d) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/h264_ps.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/libavcodec/h264_ps.c b/libavcodec/h264_ps.c
index c2747ac84c..a9c199fe62 100644
--- a/libavcodec/h264_ps.c
+++ b/libavcodec/h264_ps.c
@@ -241,12 +241,6 @@ static inline int decode_vui_parameters(H264Context *h, SPS *sps)
}
}
- if (get_bits_left(&h->gb) < 0) {
- av_log(h->avctx, AV_LOG_ERROR,
- "Overread VUI by %d bits\n", -get_bits_left(&h->gb));
- return AVERROR_INVALIDDATA;
- }
-
return 0;
}
@@ -523,6 +517,12 @@ int ff_h264_decode_seq_parameter_set(H264Context *h)
goto fail;
}
+ if (get_bits_left(&h->gb) < 0) {
+ av_log(h->avctx, AV_LOG_ERROR,
+ "Overread %s by %d bits\n", sps->vui_parameters_present_flag ? "VUI" : "SPS", -get_bits_left(&h->gb));
+ goto fail;
+ }
+
if (!sps->sar.den)
sps->sar.den = 1;