aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--src/decoder/ffmpeg_plugin.c7
2 files changed, 5 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index c3980302e..0d213525e 100644
--- a/NEWS
+++ b/NEWS
@@ -39,6 +39,7 @@ ver 0.14.2 (2009/??/??)
- ffmpeg: added support for the tags comment, genre, year
- ffmpeg: don't warn of empty packet output
- ffmpeg: check if the time stamp is valid
+ - ffmpeg: fixed seek integer overflow
- wavpack: pass NULL if the .wvc file fails to open
- mikmod: call MikMod_Exit() only in the finish() method
* audio outputs:
diff --git a/src/decoder/ffmpeg_plugin.c b/src/decoder/ffmpeg_plugin.c
index c48918067..aca02cb2a 100644
--- a/src/decoder/ffmpeg_plugin.c
+++ b/src/decoder/ffmpeg_plugin.c
@@ -264,7 +264,7 @@ ffmpeg_decode_internal(struct ffmpeg_context *ctx)
AVPacket packet;
struct audio_format audio_format;
enum decoder_command cmd;
- int current, total_time;
+ int total_time;
total_time = 0;
@@ -306,9 +306,10 @@ ffmpeg_decode_internal(struct ffmpeg_context *ctx)
av_free_packet(&packet);
if (cmd == DECODE_COMMAND_SEEK) {
- current = decoder_seek_where(decoder) * AV_TIME_BASE;
+ int64_t where =
+ decoder_seek_where(decoder) * AV_TIME_BASE;
- if (av_seek_frame(format_context, -1, current, 0) < 0)
+ if (av_seek_frame(format_context, -1, where, 0) < 0)
decoder_seek_error(decoder);
else
decoder_command_finished(decoder);