aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/error_resilience.c6
-rw-r--r--libavcodec/h263dec.c2
2 files changed, 4 insertions, 4 deletions
diff --git a/libavcodec/error_resilience.c b/libavcodec/error_resilience.c
index 77488cd589..486f5670a2 100644
--- a/libavcodec/error_resilience.c
+++ b/libavcodec/error_resilience.c
@@ -614,13 +614,13 @@ void ff_er_add_slice(MpegEncContext *s, int startx, int starty, int endx, int en
s->error_status_table[i] &= mask;
}
}
-
- s->error_status_table[start_xy] |= VP_START;
-
+
if(end_xy < s->mb_num){
s->error_status_table[end_xy] &= mask;
s->error_status_table[end_xy] |= status;
}
+
+ s->error_status_table[start_xy] |= VP_START;
}
void ff_er_frame_end(MpegEncContext *s){
diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c
index 2b9443908b..c8a13a7542 100644
--- a/libavcodec/h263dec.c
+++ b/libavcodec/h263dec.c
@@ -484,7 +484,7 @@ retry:
avctx->has_b_frames= !s->low_delay;
if(s->workaround_bugs&FF_BUG_AUTODETECT){
- if(s->padding_bug_score > -2 && !s->data_partitioning)
+ if(s->padding_bug_score > -2 && !s->data_partitioning && !s->resync_marker)
s->workaround_bugs |= FF_BUG_NO_PADDING;
else
s->workaround_bugs &= ~FF_BUG_NO_PADDING;