h264: fix init of topleft ref/mv.
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 17 Dec 2011 03:42:04 +0000 (04:42 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 17 Dec 2011 03:42:04 +0000 (04:42 +0100)
Fixes Ticket778

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/h264_mvpred.h

index 8f524ef..85405c1 100644 (file)
@@ -633,7 +633,7 @@ static void fill_decode_caches(H264Context *h, int mb_type){
                 AV_ZERO32(mv_cache[4 - 1*8]);
                 ref_cache[4 - 1*8]= topright_type ? LIST_NOT_USED : PART_NOT_AVAILABLE;
             }
-            if(ref_cache[4 - 1*8] < 0){
+            if(ref_cache[2 - 1*8] < 0 || ref_cache[4 - 1*8] < 0){
                 if(USES_LIST(topleft_type, list)){
                     const int b_xy = h->mb2b_xy[topleft_xy] + 3 + b_stride + (h->topleft_partition & 2*b_stride);
                     const int b8_xy= 4*topleft_xy + 1 + (h->topleft_partition & 2);