Browse Source

error_resilience: skip last-MV predictor step if MVs are not available.

Fixes crashes when playing broken MPEG2-TS streams.
tags/n0.8
Ronald Bultje Reinhard Tartler 14 years ago
parent
commit
20153fb8f6
1 changed files with 4 additions and 0 deletions
  1. +4
    -0
      libavcodec/error_resilience.c

+ 4
- 0
libavcodec/error_resilience.c View File

@@ -534,6 +534,9 @@ skip_mean_and_median:
ff_thread_await_progress((AVFrame *) s->last_picture_ptr,
mb_y, 0);
}
if (!s->last_picture.motion_val[0] ||
!s->last_picture.ref_index[0])
goto skip_last_mv;
prev_x = s->last_picture.motion_val[0][mot_index][0];
prev_y = s->last_picture.motion_val[0][mot_index][1];
prev_ref = s->last_picture.ref_index[0][4*mb_xy];
@@ -548,6 +551,7 @@ skip_mean_and_median:
mv_predictor[pred_count][1]= prev_y;
ref [pred_count] = prev_ref;
pred_count++;
skip_last_mv:

s->mv_dir = MV_DIR_FORWARD;
s->mb_intra=0;


Loading…
Cancel
Save