DO NOT MERGE Fixed bug in the case of resolution change.

Modified the way i4_header_decoded in decoder context
is used, to ensure that resolution change is detected
even if PPS has not been decoded.

Bug: 35583675
Test: ran POC, no longer hangs

Change-Id: Ibb3f8dfbeb66a999fd81720a7d2a02dd951a55c4
(cherry picked from commit 1d06027c69e31d450b1e837c81073362d41084d3)
diff --git a/decoder/ih264d_parse_headers.c b/decoder/ih264d_parse_headers.c
index 3807a14..068ee5b 100644
--- a/decoder/ih264d_parse_headers.c
+++ b/decoder/ih264d_parse_headers.c
@@ -569,13 +569,13 @@
     if(NULL == ps_dec->ps_cur_sps)
         ps_dec->ps_cur_sps = ps_seq;
 
-    if((3 == ps_dec->i4_header_decoded) && (ps_seq->u1_profile_idc != u1_profile_idc))
+    if((ps_dec->i4_header_decoded & 1) && (ps_seq->u1_profile_idc != u1_profile_idc))
     {
         ps_dec->u1_res_changed = 1;
         return IVD_RES_CHANGED;
     }
 
-    if((3 == ps_dec->i4_header_decoded) && (ps_seq->u1_level_idc != u1_level_idc))
+    if((ps_dec->i4_header_decoded & 1) && (ps_seq->u1_level_idc != u1_level_idc))
     {
         ps_dec->u1_res_changed = 1;
         return IVD_RES_CHANGED;
@@ -749,7 +749,7 @@
     }
 
     /* Compare with older num_ref_frames is header is already once */
-    if((3 == ps_dec->i4_header_decoded) && (ps_seq->u1_num_ref_frames != u4_temp))
+    if((ps_dec->i4_header_decoded & 1) && (ps_seq->u1_num_ref_frames != u4_temp))
     {
         ps_dec->u1_res_changed = 1;
         return IVD_RES_CHANGED;
@@ -899,12 +899,12 @@
             return ERROR_INV_SPS_PPS_T;
         }
 
-        if((3 == ps_dec->i4_header_decoded) && (ps_dec->u2_pic_wd != u2_pic_wd))
+        if((ps_dec->i4_header_decoded & 1) && (ps_dec->u2_pic_wd != u2_pic_wd))
         {
             ps_dec->u1_res_changed = 1;
             return IVD_RES_CHANGED;
         }
-        if((3 == ps_dec->i4_header_decoded) && (ps_dec->u2_pic_ht != u2_pic_ht))
+        if((ps_dec->i4_header_decoded & 1) && (ps_dec->u2_pic_ht != u2_pic_ht))
         {
             ps_dec->u1_res_changed = 1;
             return IVD_RES_CHANGED;
@@ -932,7 +932,7 @@
     }
 
     /* Backup u4_num_reorder_frames if header is already decoded */
-    if((3 == ps_dec->i4_header_decoded) &&
+    if((ps_dec->i4_header_decoded & 1) &&
                     (1 == ps_seq->u1_vui_parameters_present_flag) &&
                     (1 == ps_seq->s_vui.u1_bitstream_restriction_flag))
     {
@@ -950,7 +950,7 @@
     }
 
     /* Compare older u4_num_reorder_frames with the new one if header is already decoded */
-    if((3 == ps_dec->i4_header_decoded) &&
+    if((ps_dec->i4_header_decoded & 1) &&
                     (-1 != (WORD32)u4_num_reorder_frames) &&
                     (1 == ps_seq->u1_vui_parameters_present_flag) &&
                     (1 == ps_seq->s_vui.u1_bitstream_restriction_flag) &&