vlc | branch: master | Thomas Guillem <[email protected]> | Sun Jun 5 15:53:44 2016 +0200| [8d463d4367e82672c00e4da204f5dfae45eb3d11] | committer: Thomas Guillem
test_input_stream: don't test I/O after EOF Because it's UB and depends of accesses. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8d463d4367e82672c00e4da204f5dfae45eb3d11 --- test/src/input/stream.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/test/src/input/stream.c b/test/src/input/stream.c index b1c781d..13871cc 100644 --- a/test/src/input/stream.c +++ b/test/src/input/stream.c @@ -298,6 +298,8 @@ test( struct reader **pp_readers, unsigned int i_readers, const char *psz_md5 ) /* Compare size between each readers */ i_size = pp_readers[0]->pf_getsize( pp_readers[0] ); + assert( i_size > 0 ); + log( "stream size: %"PRIu64"\n", i_size ); for( unsigned int i = 1; i < i_readers; ++i ) assert( pp_readers[i]->pf_getsize( pp_readers[i] ) == i_size ); @@ -317,16 +319,12 @@ test( struct reader **pp_readers, unsigned int i_readers, const char *psz_md5 ) /* Test cache skip */ i_offset = 9 * i_size / 10; - while( ( i_ret = READ_AT( i_offset, 4096 ) ) > 0 ) + while( i_offset < i_size && ( i_ret = READ_AT( i_offset, 4096 ) ) > 0 ) i_offset += i_ret + 1; /* Test seek and peek */ READ_AT( 0, 42 ); READ_AT( i_size - 5, 43 ); - READ_AT( i_size, 43 ); - READ_AT( i_size + 1, 43 ); - READ_AT( i_size * 2, 43 ); - READ_AT( 99999999LL, 44 ); READ_AT( 1, 45 ); READ_AT( 2, 45 ); READ_AT( i_size / 2, 45 ); @@ -335,9 +333,7 @@ test( struct reader **pp_readers, unsigned int i_readers, const char *psz_md5 ) PEEK_AT( 0, 46 ); PEEK_AT( i_size - 23, 46 ); - PEEK_AT( i_size, 46 ); PEEK_AT( i_size / 2, 46 ); - PEEK_AT( i_size * 2, 46 ); PEEK_AT( 0, 46 ); } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
