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 978E642F1F for ; Sun, 15 May 2022 22:51:30 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5533C68B4F0; Mon, 16 May 2022 01:51:27 +0300 (EEST) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10olkn2080.outbound.protection.outlook.com [40.92.41.80]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 817F468B306 for ; Mon, 16 May 2022 01:51:20 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F2lfrwELDCvnRDSwZOVSWonnXxPHnGZWFsjujU3vUmrkb8FHAEXZl4Ok66W6sc/fwbwtKtY/LqfGmtN0oGDLmKkaXU+MAoGuibJYnkxGcYNCHMkpb31s44CDtIihD1suyy2OM+hbnw6YKfwhpabWMc9ELyNY9VZgGLsJeOgDQPVwdvXFOZUQCmInOwg/POHxa4+BXdQAXpVLKp4B8964U3PpnKdPaxXIEVptonBWxfuS7EhF4ohISgR2x4I/FSBbN9Yyd2KOnkGoeC0KPSVn/7fyOXh08QsqxJvsbeefyd09pP14AaUEOKFJNy7IMvkizxszE9EFdlmxIeTM5F41Gg== 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=AaOgwAztvUwntCmlBF0dius6exbNLzIR2VmrBQdjqfI=; b=N8xMdFJRDn/y4ExdouRnfv4eR8md1gcI4exrLlYMf//c6tPZt5RwpdaQAKvgs49TQMB05qZKzC/Rl/ugqTks5f3NXkk7kfbYdlwjTr8KjH3Pkoouzc1GVnQ3hXr1rOq1q2nFUvzpM5OrEhxjXSeNOG6z0AdJ4pvWirO+R5DgoN/rkzONFKH/IJ0NtSylRoEpyV3YsaPIBtJwyTfDWwO6lYsm3iHUEhS4y4HvlSfgI1Y9qucrRodPyfLRRzS+97cMryD4wGS5bRxz7XAhgnQauokZCAxqDjhoPZQDusWqKsv30P1nCwVR/z5j7mXMh4e9wKxuKNDtbJv96tyPkZfpFg== 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=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AaOgwAztvUwntCmlBF0dius6exbNLzIR2VmrBQdjqfI=; b=u/gmYPeuyUvlVdq+3IE3LvF8czdSxPLdeq1lEUVC0pk2ug8nWzFYACDgfCzttE018LEoyHcIgs4a/FCZJ4zH3ovhfBqEqhq2motykrX5GYiNu0aKBDE0BtmcBGnNxmXCbG9Gdddh1GH9mJJAM+vj0KIiYgjR1qfhcSN2hBVSKcuhwm41sJ6JXmA0Q9UY+nzVWZQsTCP0O8Gv3dKzvOzXI1Fyi+synsd0toyQyWT5JLl/+iRBvOOyWn4Xmzkko0HeIZgDNSq6P3bNqFrj9lbZ3chV3qdaJFpXDiMXBKS9UOCa/okpAZOiLu1ey6ahU/qe1aWckfb7wJCPX9mXrrj1Pw== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by CH0P223MB0091.NAMP223.PROD.OUTLOOK.COM (2603:10b6:610:e9::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5250.14; Sun, 15 May 2022 22:51:17 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::c536:493f:7cda:53dc]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::c536:493f:7cda:53dc%3]) with mapi id 15.20.5250.018; Sun, 15 May 2022 22:51:17 +0000 From: Soft Works To: FFmpeg development discussions and patches Thread-Topic: [FFmpeg-devel] [PATCH v4 06/10] libavformat/asfdec: fix macro definition and use Thread-Index: AQHYZ9TzhKShTiFw/kGLP3ifMRIxzK0gPvYAgABHRaA= Date: Sun, 15 May 2022 22:51:17 +0000 Message-ID: References: <33b3d163dfcd61ae6f4ac258ae28fa0756436587.1652561722.git.ffmpegagent@gmail.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [Gft0pFCvfp0dGZmJfiC7m2hBpYXC9K9p] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9ced6d75-af3c-4fde-5446-08da36c56c28 x-ms-traffictypediagnostic: CH0P223MB0091:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: YY9Eo2SGL7vxWwXmpg2r2ajykErN1hor5daE05iekMklzMi5aarT9VUq2OTgUnjRnQFwjXSzrk72wZ7+65abqF+JbCeXAjkOw2Xr9tBXjnshMxNN/xmCL4XjymNc1su24IgmQahSLmwrkEpPBqx39Zixm6Clkyng0NPEi4RJv8rfrKEYQiTvKAfz7K9m1wh0h/9ylF4FUhAeWsTUzZeRLzoymr4uSaJetIw7nO0iUfSkPDnhdKgmJYXWu2IZxFOhOnN9LWC9M9Z3X8bLBjg/q/vYjYIIcoGoaMbai1qVmDWVho23x/58lzVS6EWsJI4GXytKwYkt5hNogeVswpOJBYvY9lj9fKx2QknmgmvHvblQgkyktdsVJxClbimqAUzLhe7dTY0Eeh+vtO0NhQDLlaAUOOOBKa+8W6zsLdsV2G+l+dpwGiqOhU0aA1xqqsham/JttwYlcfYCXzpJ8d6LxbKyOh4OjrTvPrLKdWcvih/9ZeoVOaGmWrC9AWwW2s0NlM60HHUqmDcvkvSPbnhpxroBxP+Pn2wNBGPV0h1gClAClnAeCQEIbIlt3UbE5NQu94E8Zm/IWJt9NSVnO89XPURoQs7ZkBcmybetqFQpdzuFhkoZ4EmkIFHcZ/pTjs2Q x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?b1h2MFQ0WXlESHZHRzN0Y0JHWGtjWmJMNk1QZk5CV09kendiczB2d0kxMHFm?= =?utf-8?B?VGVsdGM1V0UwSlNyYm4yRDg5MGNkdk80dldiUEpJSi9oU0pMZ3haS09FYUxx?= =?utf-8?B?czFrNi9QK0d1b3FFSXR0YzZYNTc1cXJNdlhQOHp3WUxaNkp1RzNHbU5BclVz?= =?utf-8?B?NVVGR3RwSlZYTnZGRnVjUEJRTTMvMjBwTVRFWkw2U2JhbHlNQVZFRExCQjE5?= =?utf-8?B?QW5KclJFUFRmWDBGUkVIKzVnYmlOWjJjQit0akVVbTZUTWxkUzV1eW1LSTMx?= =?utf-8?B?eUNzdVp3RXNrVFNFdXJDbG1WdDVJeVQxKzh3UkdNYitoUDEvVnF1aTlDdU1B?= =?utf-8?B?bjJrZlNrbmVidWJmNHpEdUQ5eFpLS2hudzRMeEp1MDltRmIvVTVzSzltRkl1?= =?utf-8?B?Z3Y1ek1YY3JyMGVmdWtxbDFHSHZRSnhEanZPd0JJN0w0MFptNnBLMDVMN0o5?= =?utf-8?B?MWNZVDRSMUY0d3BWSW1VbFJsMUh1TDYzMGs1T0FTQzR4TkhIenp0dzc3NjZu?= =?utf-8?B?OTNHdkRXdEJ5SkVORVA3MTlGa0FPSFRaTHRYQ0c4S20zRENTZVFSaTVZWWZ4?= =?utf-8?B?c3ZOTFcyQVRWZzROVlBMckdmRStQakdZMEdrQkx4OU00UWduTjlJMjBiMFg1?= =?utf-8?B?QSttVG12dDNPVHRNTnhwTk9UcjBiR1UwemFyYkdnNW5Xc3JnOFN6eTQ5eVBQ?= =?utf-8?B?YWZEMmpvSm84QTZGc2pMaVY0cjBhOGpad1lBeXMvRE5nQ0ZDbk90UzBqeEVq?= =?utf-8?B?bFBOM2xPTGlNMitZWjVJUGJaaHJBVkExZERDNEFnL1ltQ0pZcGd0MEdDMFFo?= =?utf-8?B?bUNzVnBKaStXZjhpOE52a2N5REJrdjZuczE4S3BnUjl4K3F5ZE5HWURvYTk0?= =?utf-8?B?c0poejZGMlk3bStXR0tmZmNBRHA3dHhMOGYxT0N0Wm5UQnUxSGE4TG41TlhG?= =?utf-8?B?WFFUanRubUZnZ2d4UnlxY1VkNDdRR3V4UHljTFZFZ09SZTNLakZxS3l5OTll?= =?utf-8?B?MFg1ckRkbGdHTlBNVGJoOWtycDhuWW90NFVrUjdJTCtCNUQydXV1YXBaOXJp?= =?utf-8?B?U1dOWnpnSVFZNUdZbUJxOG8xbW5mcHc1ZXkyTXI2c01Ga2l5M3hwOGEwbUl3?= =?utf-8?B?NUZaQWlnb0o1VWpweDREMFhMVUlUNWFQdHJ3SXZMQ0kwM255TXkrajFQSUVF?= =?utf-8?B?Vm5qLzlWd3VuOXp4TmE3RDN0OHNFWmtOalg3dWVoOWlCNTNsMWY4ZU0yeFk0?= =?utf-8?B?T1UyZmJuQ2JVYlRTQ3NaWFpNQ0pjWXB1dWN0NzdaenlETW12ekNjaGU0THJY?= =?utf-8?B?blV2cWJUL1JQMENQK0NQdzNVR09GOS9iYXI1SFVNQ0lIS3lqMTFwYTZoUFp0?= =?utf-8?B?cEdmd3Y3RE1uUXJIYzZ4MUlsWC9CY04rcFVTNHBHVnhIaGpHOW4wUkxwdW1o?= =?utf-8?B?VU10TUdic2hEdURYdnkwckFvbTY1Rm1WOEE4M1Nlam5hWnRXSnJNODVtNVY3?= =?utf-8?B?ZnRTMTc3LzB6U01UQ3FjbUdac3NIQWhyTmhiaFpZbytDeUZXT1ptcXV6RWZW?= =?utf-8?B?bk9NWXNvbnpUYlp4emdPZjNtTHlOSUZuNzY0Z2xPT2RpMTUzVnNVN0htR1I1?= =?utf-8?B?YktFQjRiYjl0V2QyTU5EdjRlNXlBcnh3cGMvTVJZa3dNQ3V2ZlJhVzAzODVV?= =?utf-8?B?VFhVQXBwcG5EZmxNN1VqNVhHNGVtRkVObnhranR0eGswUlpqTkNBYmp2NUZ5?= =?utf-8?B?ZUFaOWRKcmhGTzdzVVhlTkN6OTZabUxFblRYTEcvbVNkVDBXZ3Z4cXR2dTE0?= =?utf-8?B?a1M1MEROV0wwUk4rYVZpQTYyRjNEL1JwZ3FGRnlHU0FhOGlPbGs4bm90dG1E?= =?utf-8?B?M3VYckxlTzVtcSsrbkJsak5jZDhPN2p2ZzBDRHdaSFhrRkZ1eSttelloTmtX?= =?utf-8?Q?6e5pS6lx3dY=3D?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-1ff67.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 9ced6d75-af3c-4fde-5446-08da36c56c28 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 May 2022 22:51:17.6301 (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: CH0P223MB0091 Subject: Re: [FFmpeg-devel] [PATCH v4 06/10] libavformat/asfdec: fix macro definition and use 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 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: > -----Original Message----- > From: ffmpeg-devel On Behalf Of > Andreas Rheinhardt > Sent: Sunday, May 15, 2022 8:12 PM > To: ffmpeg-devel@ffmpeg.org > Subject: Re: [FFmpeg-devel] [PATCH v4 06/10] libavformat/asfdec: fix > macro definition and use > > softworkz: > > From: softworkz > > > > Signed-off-by: softworkz > > --- > > libavformat/asfdec_f.c | 24 ++++++++++++------------ > > 1 file changed, 12 insertions(+), 12 deletions(-) > > > > diff --git a/libavformat/asfdec_f.c b/libavformat/asfdec_f.c > > index 81a29f99d5..91c3874ac7 100644 > > --- a/libavformat/asfdec_f.c > > +++ b/libavformat/asfdec_f.c > > @@ -906,21 +906,21 @@ static int asf_read_header(AVFormatContext *s) > > } > > > > #define DO_2BITS(bits, var, defval) \ > > - switch (bits & 3) { \ > > + switch ((bits) & 3) { \ > > case 3: \ > > - var = avio_rl32(pb); \ > > + (var) = avio_rl32(pb); \ > > rsize += 4; \ > > break; \ > > case 2: \ > > - var = avio_rl16(pb); \ > > + (var) = avio_rl16(pb); \ > > rsize += 2; \ > > break; \ > > case 1: \ > > - var = avio_r8(pb); \ > > + (var) = avio_r8(pb); \ > > rsize++; \ > > break; \ > > default: \ > > - var = defval; \ > > + (var) = (defval); \ > > break; \ > > } > > > > @@ -1003,9 +1003,9 @@ static int asf_get_packet(AVFormatContext *s, > AVIOContext *pb) > > asf->packet_flags = c; > > asf->packet_property = d; > > > > - DO_2BITS(asf->packet_flags >> 5, packet_length, s- > >packet_size); > > - DO_2BITS(asf->packet_flags >> 1, padsize, 0); // sequence > ignored > > - DO_2BITS(asf->packet_flags >> 3, padsize, 0); // padding length > > + DO_2BITS(asf->packet_flags >> 5, packet_length, s->packet_size) > > + DO_2BITS(asf->packet_flags >> 1, padsize, 0) // sequence > ignored > > + DO_2BITS(asf->packet_flags >> 3, padsize, 0) // padding length > > > > // the following checks prevent overflows and infinite loops > > if (!packet_length || packet_length >= (1U << 29)) { > > @@ -1066,9 +1066,9 @@ static int > asf_read_frame_header(AVFormatContext *s, AVIOContext *pb) > > asf->stream_index = asf->asfid2avid[num & 0x7f]; > > asfst = &asf->streams[num & 0x7f]; > > // sequence should be ignored! > > - DO_2BITS(asf->packet_property >> 4, asf->packet_seq, 0); > > - DO_2BITS(asf->packet_property >> 2, asf->packet_frag_offset, > 0); > > - DO_2BITS(asf->packet_property, asf->packet_replic_size, 0); > > + DO_2BITS(asf->packet_property >> 4, asf->packet_seq, 0) > > + DO_2BITS(asf->packet_property >> 2, asf->packet_frag_offset, 0) > > + DO_2BITS(asf->packet_property, asf->packet_replic_size, 0) > > av_log(asf, AV_LOG_TRACE, "key:%d stream:%d seq:%d offset:%d > replic_size:%d num:%X packet_property %X\n", > > asf->packet_key_frame, asf->stream_index, asf- > >packet_seq, > > asf->packet_frag_offset, asf->packet_replic_size, num, > asf->packet_property); > > @@ -1144,7 +1144,7 @@ static int > asf_read_frame_header(AVFormatContext *s, AVIOContext *pb) > > return AVERROR_INVALIDDATA; > > } > > if (asf->packet_flags & 0x01) { > > - DO_2BITS(asf->packet_segsizetype >> 6, asf- > >packet_frag_size, 0); // 0 is illegal > > + DO_2BITS(asf->packet_segsizetype >> 6, asf- > >packet_frag_size, 0) // 0 is illegal > > if (rsize > asf->packet_size_left) { > > av_log(s, AV_LOG_ERROR, "packet_replic_size is > invalid\n"); > > return AVERROR_INVALIDDATA; > > While protecting macro arguments is good, it is not really a "fix" > unless current usage is buggy. Ok, I will rephrase the commit message. > Which it isn't here, because >> has higher precedence than &. Could you explain which change you are referring to? All this patch does is to put macro variables in brackets and remove semicolons.. > Furthermore I am not really sure whether removing the ';' is even > something worthwhile; they are surely unnecessary (being null > statements), but does this matter? It causes a warning https://releases.llvm.org/13.0.0/tools/clang/docs/DiagnosticsReference.html#wextra-semi-stmt I don't know how others are working, but I use to work in a way where such warnings are shown in the editor and in lists in the IDE even without compilation. Now - when you have a code file that generates like 20, 50 or more warnings, it's much harder to spot those warnings that might be really relevant and hinting at a mistake, and you might be just too lazy to go through them each time. The clang diagnostics have been helpful in spotting some actual issues in this very file. That's why I consider it worthwhile to also eliminate such "non-issues". Thanks for reviewing, softworkz _______________________________________________ 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".