From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id C3D1B49379 for ; Mon, 8 Apr 2024 20:16:26 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 93B6168D3BC; Mon, 8 Apr 2024 23:15:18 +0300 (EEST) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01olkn2044.outbound.protection.outlook.com [40.92.66.44]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id AC64A68D3A1 for ; Mon, 8 Apr 2024 23:15:13 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YmG9y9QgNK06bEUkxuPgf9nhm6qfRyFdG5OxsHbd1blV9iN76swPcA7NcAFgo3tj0i5zwkjrzJdrgeqlEV2ZZlToXOjc+4zh1tnrOARBiJ9HTT+DSOxDt0HQVNgb+g9E7Gt0nPLWyxlrzfRLFgfaqLD+HOsAWdNdld15HjK85gof/QEkxjm/qr12xKJC8PTKeQMfTUrnTLxYW5PnF8A1o5DbqAP1Y8gtuD4S+CU0zyb5N/vUbDPRAE8HcXrtN4knzMDSY6DNFUP/jq3lW+nbd4NdjWiU4fPnYA8XCpAAfD41QT1RjhCSA3QeANP7yH4tfmNpVk09lSQZkwq7ecLlNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=mdoOfA2/R/6W+fWU5o0VPBSo5U/3fE7H4NqdPNg9xtA=; b=nymbo04SI+XHfpnDI58jWIDq9ADe2T+0ExVra58wQiPzCsDE0xUIOALDSuyilKSwK41i+EWwRA6wVhrMXzdluIC+H30I9W0veCNZG9CT4EGAp8zH9bXRYsEXuuBJzZoDjkdKWWHR5d+/+jJ57u8lXQYtRfDRQA5q8uFq0bm+unokLsY1hroPNTyYobXUUb8GeU6+r8PFSrspOSsxZrJA75ur7GUufsgs7ZrFdLiIB6VC81zbGgTBRZOwPZ9EG1qtWcomnqM3lEt1o19Ds2tocVaeaxIyVGT7wUBVp7ERNuZ+mSsuNDca3lE2UTjDEzZhLq3UCaglgQbmWglyo3Slkg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mdoOfA2/R/6W+fWU5o0VPBSo5U/3fE7H4NqdPNg9xtA=; b=A7rrYW12lEe2MHjI8oAeR9IC58bq3V1FjdeKeJeu0RzYZEUneM4E+1iEGu3tOJLGE6MGJXpFhKF/J31rWyvLpHzDge54pm2Gyr2sGRYpX9p/WPMRo0rtGcmyf3OGEtlWx/c0hkwR52rPugFvDSQtqjb4NYDoYsYpwr0DWuA0m5IVZJrf8n8XoGR12vIqKNlzV4b0yxkc72dbGhgz9GHhrhqo2kI6R3hYNjfu/5+caXz2ucoKzcjGvbFz03chHwMLkTLUCMAybdC+8o5sDsVoRGgzRT0XcbDdaVYhKY6lEVImRslDB/rDcodFeAIxkT4rFBJxkYsao0fkcM0CxJnVcA== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by PAXP250MB0494.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:28d::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.46; Mon, 8 Apr 2024 20:15:10 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d%4]) with mapi id 15.20.7409.042; Mon, 8 Apr 2024 20:15:10 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 8 Apr 2024 22:13:52 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [yWAUjkxDA1P47Or9TAwgcanRYUrJmEeOVa1WHhOdms4=] X-ClientProxiedBy: ZR0P278CA0124.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:20::21) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240408201405.2136840-13-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|PAXP250MB0494:EE_ X-MS-Office365-Filtering-Correlation-Id: 355d36b6-d86d-4b45-73bc-08dc58089745 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ishR+hpcOks11GAFHRR/9irx1IbtqmEIjLo3p0VuGEHce3O7lM4r1Jo6zFH+9WPkcl3KkzbxsAbhsZfA7G3uIAFXMbhL3pQ4JXTZUzoeSjc7pG9iXIuVLxxfJPf56vdse179GEfI0phqXMvdpqiPnn4FWwstvBsdPwsTMVvVxtXZuP3BIyAO00c2Btz2Gb8146zEIlHxfe19CvxO1xK4yr1RStrzz+op5rU5fG3VH6nC0mNlwfyk0j+ozcMtvtIiStWbo3Q9CvcW4MlQ0LZQurIhCMBA16RdnK/a01/1J/n153P21SIXkgVf0QJRp/epJ2o4gbmAjOFxjvTzdXRRIUTY72PFyn+4EgEutW4yhVNbrf8mjWIWMbGNMMe1/BC7Ksy0TY0mRdVfvjRP10936Qer8sKZYgI319ErVegU5pu/s589l3rnMFsSHxR1Rz4POGoAPHRnwze95quqEhUsbvDXb54zp4zGzuS4gV3JxktmQrh28B7rlXRw0nWY9FyxpHFktQF0KsulOcxRjfzpuvPTh4nZ757/xwKcVseNPTyRz+KaBALwZqJDFXaDHJ9RIJ71mcMlAu6gofs42txfe2ZiLIBfXVtGraelAzJTro9tc/GDvFiosL3Pz539FHHp X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?K1zw+SZWqh5r+Ia793fHWpihqXpWT2SSq27fsnbNXaaa5uM3JW5wmHLH8Lu3?= =?us-ascii?Q?ADB/irVVRnMPqlV4c5XPQ6xMxApX20lVU8X2psh9X3HTbL1cr+sDVUOM8CDq?= =?us-ascii?Q?y33NYe6c3XKDdJAnscxb/hcb67KNcQyAMIZd/IC/V/1sxxDkL9BSp0sX06D/?= =?us-ascii?Q?lkOO1E328RZKjAqjRxuF2KJ/ZVFUE41SFX31KZq/brYa35FJttUYD7RpBupP?= =?us-ascii?Q?MLbqrFzNhjMZu9Q5d64kFWJptir0xNVB0EC5SP3pFs8BVrp1IXXz8iADH+VA?= =?us-ascii?Q?cXY9B54yyt95nJTbZ65HeJgWI8Lmq4hG8T15Do8y4z+q/hCZ6jfdLl+Nzav8?= =?us-ascii?Q?3m2e1IrpacB7zJTr22JZlUItatUIWahd3VawhAd0HJQjrRLTetyIGn79VbeA?= =?us-ascii?Q?u+dhpL6qHbi+5mIu0J34bfaUND+iCLu+kIKbv6RevlbwZ3wO3d68USpBtl8y?= =?us-ascii?Q?MqHIk7w+8Fk84tXeRmur5knAVWmtECwZrlA/B0PESUA85CKdK9c9VamC5uyj?= =?us-ascii?Q?pLihQS96ZZBXEFCr2ts409Wc6bor5cjVIZprubbcASOUAge5eatVF87Ntq6O?= =?us-ascii?Q?mVC2BbnaJIJK9i+KGplCtqt9En48YcHbTjx9ZURUSgosaFmqd2D61FPNic+8?= =?us-ascii?Q?X+8jmrizXCq8evqwKpfzRop2IABTlTA/vlMtFN0KYiS/lZ5bitBwUc5Jo9nr?= =?us-ascii?Q?frSrXKT2FsXx78vM5a4Izco8dU92FldCPLpky3AN6iGvpz76Kvijj3/7f/OX?= =?us-ascii?Q?zN0rW0tlrlw0a8TLpilfR+3E7oCrR73hnWs8sQ4OVa/jGeJS6kJN5cIjo4C2?= =?us-ascii?Q?xqYk+JukmxB3CsKweJ9O9lUb7QW2hm1nHgr5qTBQSFMjgPIa87VXbd21+Zkv?= =?us-ascii?Q?/hujX7O8Jm2ADVhNTUQJn5NjsNR6q9OPF5UTfwTFRAbecfZtKQKPEHho+LtK?= =?us-ascii?Q?mUcnexgyNHVrmlPsO4750/G8DAvw4zJ5btJd2ht7Yn6fgAWdiuipDfhv8ths?= =?us-ascii?Q?HAm4/6lrR77pvjp77Qh/V6fIHw8xLivY2yNIY+eQMBpR4B8WNNu3+LaD3JA5?= =?us-ascii?Q?iYagJlyu61FYtbniGXQLLbVdholIaqobaC4gq5pM+gqufniW/Wh37Jmm/aIx?= =?us-ascii?Q?8pU2LGQWex5ZN8P01U//ezbZj72ZCPC5NJxolRZbvhvxVeh6u7aT21Xf8PcW?= =?us-ascii?Q?rJGxmlWVDwbXOJjIbtib5dtwzZk337z1Dl327XI7gT0Umh+b/094hl0X5RNI?= =?us-ascii?Q?VHpaws7a9s4ccH/eqxnffnxKgZDEEKl26Hqv4aFsrw=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 355d36b6-d86d-4b45-73bc-08dc58089745 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2024 20:15:10.2397 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXP250MB0494 Subject: [FFmpeg-devel] [PATCH v2 14/27] avcodec/wavpack: Optimize always-false comparison away X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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: Andreas Rheinhardt Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Also use the correct type limit SIZE_MAX; INT_MAX comes from a time when this used av_buffer_allocz() which used an int at the time. Signed-off-by: Andreas Rheinhardt --- libavcodec/wavpack.c | 5 ++++- libavcodec/wavpack.h | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c index 51ac943fe7..6ab9088213 100644 --- a/libavcodec/wavpack.c +++ b/libavcodec/wavpack.c @@ -1000,7 +1000,8 @@ static int wv_dsd_reset(WavpackContext *s, int channels) if (!channels) return 0; - if (channels > INT_MAX / sizeof(*s->dsdctx)) + if (WV_MAX_CHANNELS > SIZE_MAX / sizeof(*s->dsdctx) && + channels > SIZE_MAX / sizeof(*s->dsdctx)) return AVERROR(EINVAL); s->dsdctx = ff_refstruct_allocz(channels * sizeof(*s->dsdctx)); @@ -1433,6 +1434,7 @@ static int wavpack_decode_block(AVCodecContext *avctx, AVFrame *frame, int block av_log(avctx, AV_LOG_ERROR, "Invalid channel info size %d\n", size); } + av_assert1(chan <= WV_MAX_CHANNELS); break; case WP_ID_SAMPLE_RATE: if (size != 3) { @@ -1524,6 +1526,7 @@ static int wavpack_decode_block(AVCodecContext *avctx, AVFrame *frame, int block } else { av_channel_layout_default(&new_ch_layout, s->stereo + 1); } + av_assert1(new_ch_layout.nb_channels <= WV_MAX_CHANNELS); /* clear DSD state if stream properties change */ if ((wc->dsdctx && !got_dsd) || diff --git a/libavcodec/wavpack.h b/libavcodec/wavpack.h index 9f62f8406d..2efbb1fd06 100644 --- a/libavcodec/wavpack.h +++ b/libavcodec/wavpack.h @@ -57,6 +57,7 @@ #define WV_FLT_ZERO_SENT 0x08 #define WV_FLT_ZERO_SIGN 0x10 +#define WV_MAX_CHANNELS (1 << 12) #define WV_MAX_SAMPLES 150000 enum WP_ID_Flags { -- 2.40.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".