From: Leo Liu Date: Mon, 22 Aug 2016 16:05:53 +0000 (-0400) Subject: vl/rbsp: fix another three byte not detected X-Git-Tag: upstream/17.1.0~7077 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5277f25480a290b02c7bfe548c56288fce8404b5;p=platform%2Fupstream%2Fmesa.git vl/rbsp: fix another three byte not detected This happens when three byte "00 00 03" is partly loaded to vlc->buffer, thus at the bottom of buffer with valid bits is "00" or "00 00" and left like "00 03" or "03" in the data, so that it will not be detected by three byte emulation check. The reason for that is the escaped bit was set to 0 from the rbsp init. Signed-off-by: Leo Liu Acked-by: Christian König --- diff --git a/src/gallium/auxiliary/vl/vl_rbsp.h b/src/gallium/auxiliary/vl/vl_rbsp.h index c8bebff..160b2f8 100644 --- a/src/gallium/auxiliary/vl/vl_rbsp.h +++ b/src/gallium/auxiliary/vl/vl_rbsp.h @@ -56,7 +56,7 @@ static inline void vl_rbsp_init(struct vl_rbsp *rbsp, struct vl_vlc *nal, unsign /* copy the position */ rbsp->nal = *nal; - rbsp->escaped = 0; + rbsp->escaped = 16; /* search for the end of the NAL unit */ while (vl_vlc_search_byte(nal, num_bits, 0x00)) {