summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-01-04 02:05:08 +0100
committerMichael Niedermayer <michaelni@gmx.at>2014-01-04 02:06:21 +0100
commit8e6af036b95784b6e2411c18a979c496cd69fc29 (patch)
treed2719db345953345991706fcc6ac11b977a1759a /libavcodec
parent508229adb930c03ee0539faada5ff0b14fb570d6 (diff)
parent58312b2472d3a44d7458865c459d59ef2e02bf1a (diff)
Merge commit '58312b2472d3a44d7458865c459d59ef2e02bf1a'
* commit '58312b2472d3a44d7458865c459d59ef2e02bf1a': h264: reset data_partitioning if decoding the slice header for NAL_DPA fails Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/h264.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index d125f54a03..777e67eec5 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -4971,8 +4971,13 @@ again:
hx->intra_gb_ptr =
hx->inter_gb_ptr = NULL;
- if ((err = decode_slice_header(hx, h)) < 0)
+ if ((err = decode_slice_header(hx, h)) < 0) {
+ /* make sure data_partitioning is cleared if it was set
+ * before, so we don't try decoding a slice without a valid
+ * slice header later */
+ h->data_partitioning = 0;
break;
+ }
hx->data_partitioning = 1;
break;