{
if( p_pkt->p_buffer[3] == 0xbd &&
p_pkt->i_buffer >= 9 &&
- p_pkt->i_buffer >= 9 + p_pkt->p_buffer[8] )
+ p_pkt->i_buffer >= 9 + (size_t)p_pkt->p_buffer[8] )
{
/* VOB extension */
return 0xbd00 | p_pkt->p_buffer[9+p_pkt->p_buffer[8]];
}
}
- asprintf( &psz_vobname, "%s://%s", p_demux->psz_access, p_demux->psz_path );
+ if( asprintf( &psz_vobname, "%s://%s", p_demux->psz_access, p_demux->psz_path ) == -1 )
+ {
+ free( p_sys );
+ return VLC_EGENERIC;
+ }
i_len = strlen( psz_vobname );
if( i_len >= 4 ) memcpy( psz_vobname + i_len - 4, ".sub", 4 );