From af8c5e08d7ed56f770ba97aaaef495a7c0ae6ac4 Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Fri, 25 Jul 2008 23:55:31 +0000
Subject: [PATCH] Revert r14404 	Remove another 2 incorrect checks. 	These
 would ignore fields of different parity. I was wrong, i thought pic_stricture
 is the current pic structure. But it does not make a difference either way on
 the reference bitstreams.

Originally committed as revision 14405 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavcodec/h264.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index ac0d088e4a1..c3def672ea8 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -2954,7 +2954,8 @@ static int decode_ref_pic_list_reordering(H264Context *h){
                             assert(ref->reference);
                             assert(!ref->long_ref);
                             if(
-                                   ref->frame_num == frame_num
+                                   ref->frame_num == frame_num &&
+                                   (ref->reference & pic_structure)
                               )
                                 break;
                         }
@@ -2972,7 +2973,7 @@ static int decode_ref_pic_list_reordering(H264Context *h){
                         }
                         ref = h->long_ref[long_idx];
                         assert(!(ref && !ref->reference));
-                        if(ref){
+                        if(ref && (ref->reference & pic_structure)){
                             ref->pic_id= pic_id;
                             assert(ref->long_ref);
                             i=0;
-- 
GitLab