From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 8D92C4C19C for ; Mon, 8 Dec 2025 13:22:45 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'MooJO8MXtYlcc0VewN3Iu11QqPoc7CPxq5DqVszZMOU=', expected b'ShveNHyP2F/20+GomUo+rCJpkTkAYEPXN1wVrnUdReI=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1765200153; h=mime-version : to : date : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=MooJO8MXtYlcc0VewN3Iu11QqPoc7CPxq5DqVszZMOU=; b=SD+dy+4CPK3TireZsqNhRZKpIOwjL7FwA6qtmXfke/WbiMycFXJjZ0wPy30Wp2L/kxB5h BaKDcK66GiY1Y1p0loIafskdZkIIf6EfqQjowflM0c6cZbVbl0GqL3GuOfsFJa6mY/qzOWo kxzGL3T0gyqeHwchfdHH6u1AmP9e0GSyDLafDhn6WQU0rmtxT5t3BFUX3K8M/iEGNYP2fUw uzmXI1rNcnq6toUJD2vZpyV/gAMtokWmyDn5kRxotAH2ybyNQLonBu8BPcsHHojXItDEr4o 10f3a2bJUPJ8EDlEicotBt5TQJhO1mGnJ3cCLkHa3/8QmeOIVoo256QCM4fg== Received: from [172.19.0.3] (unknown [172.19.0.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id A67A369064B; Mon, 8 Dec 2025 15:22:33 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1765200140; b=PaU0g2HO+fa0PQmXOUhcOoR5c/lBvelDK9hts22LUAbNHTaiHmruCIYr1NhFsXCYAovGZ 32BEJc+YYe3V3Fs1DFsMa/3EWJ9bGNsMaejF5S6jVUsQhPYArA4U0i8Nx95dXc9o1wm1iWT I1tqTlgq8kaq8JMDiAGZ3oDYzjBhE1rTNx5/HsGrfWW8i2qoPySe5j/jLCCZhKbF/S4a9ll kxGYh7qzcVg94+UU1zItFrFeQDwVseifFHMfRPfUWJO/AaLq6fgQSlUuwqGloYg+9TT6tOa Lac22C2ULXQ74iyzK/vU+/PNLlBSJPc/xoJ2fZg722AeSuRwaNm9R+MKuRPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1765200140; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=w8v29aXTHKjBvNZQM4lm0hN8nTceOgOYFg01EHtmG3c=; b=m9rfL9J5YEcujhkEO6e2iQFS1dNRMPUkkVoAfJug6XjN8En+d6+f0L0PJvEJkEYHYldBz m97ySy6I+Tm7B9sT5ch3/mHItk0w7OVhPVbu0wgKYHDPo7zA/QyAMh7u/MTUzma+SrpX4b7 WNokfrRqW3z49isROXZrbNWwyFbS7iYBL81qxmBUf1XjqqB+oAG1EZO7IjqDo9OSRMZc6In 0YrhB1VHkfE2OPRYgyHYxQZYF+vqZRQMaIC7J3+4Tdhl3gZXRk92UbHQw56zbfLGEjVKLzz zhC3KxBZb8IPeqk9WL6SHpjB95haPTgk+H9gk4H7izPbeIWczs0C4s0O8Zog== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=pass header.from=ffmpeg.org policy.dmarc=quarantine Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=ffmpeg.org policy.dmarc=quarantine DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1765200131; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : date : from; bh=ShveNHyP2F/20+GomUo+rCJpkTkAYEPXN1wVrnUdReI=; b=gJU/8FOHAVLNxUEo845FKlAdxbn+jfeOAxtlHNka2zqB2P7i4o2EmFhG17HkHSkzkHYRv fQ3QKNyZU1+MtL+PfuSlIO09GzTbhUDbcKgKYplHxC664yU3+evuOBix6QOPEEse6c2lTt9 z5Q8pcv5chxJ3BABjTyV8LChsnQvF3qfVkRrbUWShptN8x74BEAee9bpZOEFy2bKCDz+Dyu u+2TxEvdNqOn4hlaigHTSCZ49SfMV+blDS0mwFKgq0rYwZEuq+GKmbbrJGkV/DyBevUtzyB Uwyn9f4vk/Xg+UOYm4PBQI9ytkcQ+RsNuwlw0lJgYbbj1pQ8Qa7nda+UPSbw== Received: from 55ca25703178 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 8DF90690549 for ; Mon, 8 Dec 2025 15:22:11 +0200 (EET) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Date: Mon, 08 Dec 2025 13:22:11 -0000 Message-ID: <176520013173.39.8057095499015813386@2cb04c0e5124> Message-ID-Hash: MYHQJYTLONLD4VV4L4Z2LURH6MK2X5RJ X-Message-ID-Hash: MYHQJYTLONLD4VV4L4Z2LURH6MK2X5RJ X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH] avfilter/vf_scale_d3d12: fix integer overflow in input framerate calculation (PR #21130) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Timo Rothenpieler via ffmpeg-devel Cc: Timo Rothenpieler Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #21130 opened by Timo Rothenpieler (BtbN) URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21130 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21130.patch Also removes pointless intermediate variables that caused the overflow and truncation to happen in the first place. Fixes #YWH-PGM40646-1 >>From 338889c0d9794782ea1b247bce934df50e5ade8c Mon Sep 17 00:00:00 2001 From: Timo Rothenpieler Date: Mon, 8 Dec 2025 14:18:36 +0100 Subject: [PATCH] avfilter/vf_scale_d3d12: fix integer overflow in input framerate calculation Also removes pointless intermediate variables that caused the overflow and truncation to happen in the first place. Fixes #YWH-PGM40646-1 --- libavfilter/vf_scale_d3d12.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/libavfilter/vf_scale_d3d12.c b/libavfilter/vf_scale_d3d12.c index 6950feb32b..8066bd0725 100644 --- a/libavfilter/vf_scale_d3d12.c +++ b/libavfilter/vf_scale_d3d12.c @@ -155,8 +155,6 @@ static DXGI_COLOR_SPACE_TYPE get_dxgi_colorspace(enum AVColorSpace colorspace, e static AVRational get_input_framerate(AVFilterContext *ctx, AVFilterLink *inlink, AVFrame *in) { - int64_t duration_scaled; - int64_t time_base_den; AVRational framerate = {0, 0}; if (in->duration > 0 && inlink->time_base.num > 0 && inlink->time_base.den > 0) { @@ -164,13 +162,9 @@ static AVRational get_input_framerate(AVFilterContext *ctx, AVFilterLink *inlink * Calculate framerate from frame duration and timebase * framerate = 1 / (duration * timebase) */ - duration_scaled = in->duration * inlink->time_base.num; - time_base_den = inlink->time_base.den; - framerate.num = time_base_den; - framerate.den = duration_scaled; - /* Reduce the fraction */ av_reduce(&framerate.num, &framerate.den, - framerate.num, framerate.den, INT_MAX); + inlink->time_base.den, in->duration * inlink->time_base.num, + INT_MAX); } else if (inlink->time_base.num > 0 && inlink->time_base.den > 0) { /* Estimate from timebase (inverse of timebase is often the framerate) */ framerate.num = inlink->time_base.den; -- 2.49.1 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org