From 089fac77a6bf9199a5ec161e9c27850f0a680541 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sun, 1 Dec 2013 09:27:01 +0100 Subject: [PATCH] alsa-audio-dec: explicitly cast the delay to a signed int64 Otherwise the expression will be evaluated as unsigned, which will break when the result should be negative. CC:libav-stable@libav.org --- libavdevice/alsa-audio-dec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavdevice/alsa-audio-dec.c b/libavdevice/alsa-audio-dec.c index 5b32ed980c..0687a4ad3d 100644 --- a/libavdevice/alsa-audio-dec.c +++ b/libavdevice/alsa-audio-dec.c @@ -142,7 +142,7 @@ static int audio_read_packet(AVFormatContext *s1, AVPacket *pkt) ts_delay += res; pkt->pts = timestamp.tv_sec * 1000000LL + (timestamp.tv_nsec * st->codec->sample_rate - - ts_delay * 1000000000LL + st->codec->sample_rate * 500LL) + - (int64_t)ts_delay * 1000000000LL + st->codec->sample_rate * 500LL) / (st->codec->sample_rate * 1000LL); pkt->size = res * s->frame_size;