From: RĂ©mi Denis-Courmont Date: Wed, 17 Feb 2010 20:25:06 +0000 (+0200) Subject: stream_ReadLine: bytes per char is either 1 or 2 X-Git-Tag: 1.1.0-pre1~866 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=fcead451d89ae2837684b32c7af6c28ef43a3e12;p=vlc stream_ReadLine: bytes per char is either 1 or 2 --- diff --git a/src/input/stream.c b/src/input/stream.c index b36590bba5..d068986298 100644 --- a/src/input/stream.c +++ b/src/input/stream.c @@ -1573,20 +1573,18 @@ char *stream_ReadLine( stream_t *s ) const uint8_t *p = p_data; const uint8_t *p_last = p + i_data - s->p_text->i_char_width; - if( s->p_text->i_char_width == 2 ) + assert( s->p_text->i_char_width == 2 ); + if( s->p_text->b_little_endian == true) { - if( s->p_text->b_little_endian == true) - { - /* UTF-16LE: 0A 00 */ - while( p <= p_last && ( p[0] != 0x0A || p[1] != 0x00 ) ) - p += 2; - } - else - { - /* UTF-16BE: 00 0A */ - while( p <= p_last && ( p[1] != 0x0A || p[0] != 0x00 ) ) - p += 2; - } + /* UTF-16LE: 0A 00 */ + while( p <= p_last && ( p[0] != 0x0A || p[1] != 0x00 ) ) + p += 2; + } + else + { + /* UTF-16BE: 00 0A */ + while( p <= p_last && ( p[1] != 0x0A || p[0] != 0x00 ) ) + p += 2; } if( p > p_last ) @@ -1595,7 +1593,7 @@ char *stream_ReadLine( stream_t *s ) } else { - psz_eol = (char *)p + ( s->p_text->i_char_width - 1 ); + psz_eol = (char *)p + 1; } }