From patchwork Fri Nov 17 00:28:22 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacob Trimble X-Patchwork-Id: 6132 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp6457595jah; Thu, 16 Nov 2017 16:28:55 -0800 (PST) X-Google-Smtp-Source: AGs4zMaWrvgZaeO26uIdhfTH23aF5gXV1yP2+wx34gHkSNk7N3zAAzzJGbLe6i1zHkz6Cgka7gZo X-Received: by 10.223.144.71 with SMTP id h65mr2964185wrh.41.1510878535132; Thu, 16 Nov 2017 16:28:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510878535; cv=none; d=google.com; s=arc-20160816; b=iv8vhLGlcI6c+c0MnF2TAWArAQsVq7clkKd/I4POymvtuCRHYoloOiIARvnHeTAufA X9dVGJ+W4ZrJUc7t4IFFhWnwi/LXzRqELcIkhrr+toQ7tJvJS6tpd2X/lPlg5YSNOjJd pMGWPTzKB+2xAedXRiXex3jJv8MWCBwOpJta6bkXwbTDF1XuXXydbYfJA1ZvFt5x5sDn 0m0V4MBHttV8HmFpmFqY9DoQM06g7j7HfMkjzPUGTkDusE0CQvWTcC00Sg7x9lnCqYqK VgkYNaSAYVD0eJ93vfD/+T+BCkLXxPYgHgfJ8IuT+RYcRqePhubiv+wJHtQMsDcKlXex CiDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:to:from:message-id:date:mime-version :dkim-signature:delivered-to:arc-authentication-results; bh=oBL9h6X5zxbD/afB3dxfUH+bx9BwRkZk3KApsxqURyA=; b=s6pBdglz0TzP7Xc8Ygf/7ZlUvpxcOw/drMvmrLmBAx29jW/xn/UiXeJRVUpRLxZP5E vPKOFEN/OT8OyCW5ORbcMgCN/mvrlC4jzYMuUiLIh7idddOq3rwdKL6HE0CbVjEbB81y YmupRIK5ev9u7NC43+m6bwfBxMni+ZzooKYB4cAbnrcdDWjOqoL2y3cqc+Kaq2riqSDz 4rFt0iPM7Zs3kf4yAPgn8M40zUm9mty5XdrsdrqVNEM/iQlmmDlsoJV3R3/yQWD52N6o XnjpV+/mWcS6KjTDAmuR8w2uZjTV73PO/UlosbugUysCi3/5BNP5bkUSiRE+EF3Wzudg eFwQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@google.com header.s=20161025 header.b=SUTdt0sp; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id p108si1705299wrb.221.2017.11.16.16.28.54; Thu, 16 Nov 2017 16:28:55 -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=@google.com header.s=20161025 header.b=SUTdt0sp; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D8648689CE5; Fri, 17 Nov 2017 02:28:37 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ot0-f202.google.com (mail-ot0-f202.google.com [74.125.82.202]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 60B97680D00 for ; Fri, 17 Nov 2017 02:28:31 +0200 (EET) Received: by mail-ot0-f202.google.com with SMTP id p43so462344otd.15 for ; Thu, 16 Nov 2017 16:28:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:date:message-id:subject:from:to:cc; bh=aL3xHWPW7O25Eh97m85dGXi0DP8lUIo4s22BLvpyt3s=; b=SUTdt0spjOwUdRfqKzHzhfcsNLx/JChGDhRxOEyP2yI1xMFNkmElKnJK52ap1MDm+N /+vPaK3S4UX19K79VVebE0LFng11EM3hPJyj9ocxaQLYifuoT7Pww9sbNlLn0SGbWWqE DVPoKPAlUeRxWlnLvRzR/k9X1Yn+m17R3ebrFVYGmG6eWBeyqOF5vSIRDF79R98XiCgc bZDqD67PVVOzRzeiJZRqTLhfKo2Kl4+R+OBXJQt4aKs0n778oOEceZVtfBuiR0Ig6ukx xG6K3FDChYB2zW2xZ8m6qr9u1GTtDJwSJKRsE7+hmKMRjPB5SVUS1P2xIe/C9kQS5uHb dvyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:date:message-id:subject:from:to:cc; bh=aL3xHWPW7O25Eh97m85dGXi0DP8lUIo4s22BLvpyt3s=; b=HOD9omndzi+s2zGBkdA07jPnFaYH5Zpx2G8h/Mxk4gdwb5+GgZ20PliidC3shChJUB 7TujweN8u7iuNrCLyF/ajSnxQHxfcHS/3k42u6+XoCL9eBOCMTXaAEdD6QhHt5aSkhZY yBY7vzByvV6tDPcm+vyiyeLFj8pH0o+TCZhtQFzg83oOZPHoqJ67jK9A6AE9OUFJhJ1A 1Ibvad19vWpDtBRSAJ3a/wvmlcQX3IBW6RDrxz8V0sSD/VbLRrbVxAea53UG9KW1WcKA 05CWG3YgVyCNF5rVtY4LDbTg4mxc7S7f69zF8fS854IJKVOy4vU1x/ecWmPyUURnGrwO VG8g== X-Gm-Message-State: AJaThX6vxmSIilDuf3jQqHor/LYb3k0kp11uxY53GEK1LpXPypML3Mcm GTkarXqDvDr1fczzwuZwOccc6veRF0XiEEBTGUPZR9mfkYTnoB+V9An/+Nbu5GgvjN9UH7W0lOC Gv/pxYC6WK09XFIw9kKj/OOdj4V+iWCOBKLEn45YSh4tl+KHzejo8Q+LJCgWuizfO9N4e MIME-Version: 1.0 X-Received: by 10.157.38.8 with SMTP id a8mr60550otb.70.1510878525905; Thu, 16 Nov 2017 16:28:45 -0800 (PST) Date: Thu, 16 Nov 2017 16:28:22 -0800 Message-Id: <20171117002822.101228-1-modmaker@google.com> X-Mailer: git-send-email 2.15.0.448.gf294e3d99a-goog From: Jacob Trimble To: ffmpeg-devel@ffmpeg.org Subject: [FFmpeg-devel] [PATCH] avformat/mov: Propagate errors in mov_switch_root. 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 Cc: Jacob Trimble Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Jacob Trimble --- libavformat/mov.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index d49d820d2b..c5f07595df 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -6747,6 +6747,7 @@ static int should_retry(AVIOContext *pb, int error_code) { static int mov_switch_root(AVFormatContext *s, int64_t target, int index) { + int ret; MOVContext *mov = s->priv_data; if (index >= 0 && index < mov->frag_index.nb_items) @@ -6769,8 +6770,9 @@ static int mov_switch_root(AVFormatContext *s, int64_t target, int index) mov->found_mdat = 0; - if (mov_read_default(mov, s->pb, (MOVAtom){ AV_RL32("root"), INT64_MAX }) < 0 || - avio_feof(s->pb)) + if ((ret = mov_read_default(mov, s->pb, (MOVAtom){ AV_RL32("root"), INT64_MAX })) < 0) + return ret; + if (avio_feof(s->pb)) return AVERROR_EOF; av_log(s, AV_LOG_TRACE, "read fragments, offset 0x%"PRIx64"\n", avio_tell(s->pb));