diff options
author | Daniel Verkamp <daniel@drv.nu> | 2009-10-05 09:19:42 +0000 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2009-10-05 09:19:42 +0000 |
commit | 79c0790789668f07e414eb1205ddffa9fd8236f0 (patch) | |
tree | c86ec974ae03bc7dde30c695c2632592da5ad8d2 /libavformat | |
parent | 63380b5e54f64abdde4a8b6bce0d60f1fa4a22a1 (diff) | |
download | ffmpeg-79c0790789668f07e414eb1205ddffa9fd8236f0.tar.gz |
Fix pcm_read_seek () when the position it calculates is greater than 2 GB.
pcm_read_seek() puts the return value of url_fseek() in an int and then
compares < 0 to see if an error occurred; if the position is greater
than 2 GB, the 32-bit signed int result will be < 0.
Change the type of ret to int64_t to avoid the wraparound.
patch by Daniel Verkamp, daniel drv nu
Originally committed as revision 20169 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat')
-rw-r--r-- | libavformat/raw.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/raw.c b/libavformat/raw.c index ed5f1ca73d..1449a20240 100644 --- a/libavformat/raw.c +++ b/libavformat/raw.c @@ -219,8 +219,8 @@ int pcm_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags) { AVStream *st; - int block_align, byte_rate, ret; - int64_t pos; + int block_align, byte_rate; + int64_t pos, ret; st = s->streams[0]; |