ffmpeg_source: do not adjust offset on read error/eof

It has been observed that NuCachedSource2 can return a negative
value on attempts to read at EOS (end of stream). Also, the
url_feof from FFMPEG attempts an additional fill_buffer after
a eof_reached condition has been set. If the offset is adjusted
backwards at EOS, then url_feof will never detect the EOS and
will have an infinite stream of data. This is particularly bad
when memory is allocated on each line of data read (eg. when
an hls,applehttp media type is parsed via hls_read_header).

Change-Id: Ieb992e2e9e2a55adaabc28fb407f519e56b10011
ffmpeg_source: add url check to android_open

This check confirms that if a URL is attached to the
android-source in the url string passed to android_open,
that it match the actual URL pointed to by that datasource.

It has been observed that some hls,applehttp sources contain
playlists within the playlist. In these cases, the additional
playlists may be opened by rewriting the original URL. However,
since the "android-source:<%p>" prefix is unmodified, it "opens"
the original URL again. This continues until memory is depleted.

Change-Id: Ieb504393aaa204a641035c982fe4a123a3e61a98
Merge pull request #4 from CyanogenMod/cm-11.0

merge into kk4.4