demux/mkv: return 0 when the data was not fully read
This is how the IOCallback abstraction works 1. Either you read the amount requested, or you return 0.
vlc_stream_Read() reads the whole amount of data, unless it reaches the end of file. In that case it returns the amount it could read.