From patchwork Mon Nov 7 22:49:52 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Cadhalpun X-Patchwork-Id: 1328 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.90.1 with SMTP id o1csp1381292vsb; Mon, 7 Nov 2016 14:50:02 -0800 (PST) X-Received: by 10.28.10.6 with SMTP id 6mr8646354wmk.12.1478559001981; Mon, 07 Nov 2016 14:50:01 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id e29si12996088wmi.40.2016.11.07.14.50.01; Mon, 07 Nov 2016 14:50:01 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@googlemail.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=QUARANTINE dis=NONE) header.from=googlemail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A8EE8689A48; Tue, 8 Nov 2016 00:49:56 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm0-f67.google.com (mail-wm0-f67.google.com [74.125.82.67]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1E015689908 for ; Tue, 8 Nov 2016 00:49:50 +0200 (EET) Received: by mail-wm0-f67.google.com with SMTP id c17so18987774wmc.3 for ; Mon, 07 Nov 2016 14:49:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=from:to:subject:message-id:date:user-agent:mime-version :content-transfer-encoding; bh=wn54/Ej5VjByGWQzQakKuFW/fxnuRhtmXPewjdYuQfc=; b=Iy+fCI2skBEDoxFLoqKVneLpQXfNImQgROPUFNTYF4BRrKxUiu8zt3HmAWb4bmNjA/ V2WRAAvUBCEK6I8S5vcaw/3WsDmCW9dw09b3S/0kS4nLHCfk4FV1Q1Lya6tZrNRM523d ovU5MyowYZiJGcjToaPIFQvgz2hDfb5Ts2MCUBjBkaWL1ZnW+df1japETzn9IaKpUIcr xrsRmjkPnaAkjsELiLhPh+tPS9ZsExDo3l1NFPDPrDUXCk8+5al6FhKZGu4NqEk0jT6V M8WzYznSwaqheJ424euc0X6K/V73giWbIHzeZolCUIpl6wtwrC26088qvb9wCic2qGq6 aCtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:message-id:date:user-agent :mime-version:content-transfer-encoding; bh=wn54/Ej5VjByGWQzQakKuFW/fxnuRhtmXPewjdYuQfc=; b=k0URN3CpY4hDWbr7nz7ZEJOUTf14BtK7IQ0OHqYMxVX2Kn6Lrqq73Whdt8EYEP1ZEU v2CyWVTkW1PlyWSOh9sRFwshuZm7Vj5MBq/rNDsxi1tMs7QsTOn5azjra4bN/iEqAkov 1yZBE4NEuys/kCcZ/lZpNnK4NRInoGbLab6LFRDPmNKoEadYdOGJlOOCR3DPr6UQ4Myu 9yWR2iiJ6DZ9qtneg2bwRtkgdlz57dS6DLZk4Fymt/3jAZxuDbzIjChCcdlaM3WQNXAk q51aWxPIE8Givt2sAKpTnjTyQ8xOtccLbXZ7Hjd21zhxVSV77pi99I/hgLF4/pbu/QXn ZKGg== X-Gm-Message-State: ABUngvfRcB2XiCijiCaIE7n9bNRq61QxUQvncLGKK+2ZY2dD7OJRvPPilQ3P5ben+hneyg== X-Received: by 10.28.126.146 with SMTP id z140mr9032571wmc.84.1478558993332; Mon, 07 Nov 2016 14:49:53 -0800 (PST) Received: from [192.168.2.21] (p5B072203.dip0.t-ipconnect.de. [91.7.34.3]) by smtp.googlemail.com with ESMTPSA id g142sm16089368wmd.2.2016.11.07.14.49.52 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 07 Nov 2016 14:49:52 -0800 (PST) From: Andreas Cadhalpun X-Google-Original-From: Andreas Cadhalpun To: FFmpeg development discussions and patches , libav development Message-ID: Date: Mon, 7 Nov 2016 23:49:52 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.4.0 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] mpegts: prevent division by zero X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Cadhalpun --- libavformat/mpegts.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index fad10c6..77d63f2 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -2692,6 +2692,10 @@ static int mpegts_read_header(AVFormatContext *s) /* NOTE1: the bitrate is computed without the FEC */ /* NOTE2: it is only the bitrate of the start of the stream */ ts->pcr_incr = (pcrs[1] - pcrs[0]) / (packet_count[1] - packet_count[0]); + if (ts->pcr_incr <= 0) { + av_log(s, AV_LOG_ERROR, "invalid pcr increment %d\n", ts->pcr_incr); + return AVERROR_INVALIDDATA; + } ts->cur_pcr = pcrs[0] - ts->pcr_incr * packet_count[0]; s->bit_rate = TS_PACKET_SIZE * 8 * 27000000LL / ts->pcr_incr; st->codecpar->bit_rate = s->bit_rate;