From patchwork Thu Feb 22 00:33:56 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 46426 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:26a3:b0:19e:cdac:8cce with SMTP id h35csp48196pze; Wed, 21 Feb 2024 16:52:56 -0800 (PST) X-Forwarded-Encrypted: i=2; AJvYcCUpTs3bndvtXPU5c9N/RcSXRs9bRDZ7s0U7/+KQxh3/T2kXzpunVgN6MCg4XXvteDVg7USfij5eIN0C8ipQ+3pAJawfv/66RulsBg== X-Google-Smtp-Source: AGHT+IGxfIrNfQN14zPSaia3KxheAP0byr9dK7pEOWYndxOtuwBC8YbyMBgM3RqEmtAntq8fPMnF X-Received: by 2002:ac2:4d10:0:b0:512:d830:358c with SMTP id r16-20020ac24d10000000b00512d830358cmr1189531lfi.49.1708563175939; Wed, 21 Feb 2024 16:52:55 -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 v30-20020a50955e000000b005641de6e853si4612058eda.82.2024.02.21.16.52.55; Wed, 21 Feb 2024 16:52: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=@outlook.com header.s=selector1 header.b=Tokrd2vr; arc=fail (body hash mismatch); 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=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5D80768D1BE; Thu, 22 Feb 2024 02:52:48 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04olkn2094.outbound.protection.outlook.com [40.92.75.94]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 512D668CD96 for ; Thu, 22 Feb 2024 02:52:41 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jbkDgvItl8sH219hbhlM2c5j5Pqpcr4+mpGHXSxUy/745GYMf19Li51LjFQHOKbgDitPJLDKszbH2AxpnqX0ay8Ku8QLqkuldRylk95FB2A6ZHw3N50HtJ5I1unt13hF3Zj1PgkivqnLPqsu8kKfwdVx4a6IRTK+m0SkHRWO3M2pMEmp6YblfLEXSCWXZN7i9l7UkqbItBL/8LlNTwMAAbrAAU05RJOBfw+p6+6K23PtrMp5J0dbl1D0jFKPCNXXf3JgPYsX7CLZb4lf/SYEStp5eYMYkiK0YxsGJ5aF3Uz3izF4ybMp/lTEn6ZEafqTKybr4EEambFW4iho0FTYag== 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=9RB7UHoObthMHYAE2FeRs8NYB1Hk9jVcnB4WR0zyBag=; b=heRuzgwuRckAqilDQLWo91f2rgtjmfnLjjTwwhpt8kkt1z1mKoJgTQNtt3Val3VVBhSwejuL0Pt9GBuuFi9w+RqV9eB1Af3qc7OfhyfjfQySnVz3vilg+RrvVNCQISpAZGpgBt7VfuhlvfJs/dLDfXepW5ZlnSfYECKAQSK/1u5pXUW3P+08EmpXwPWeUaD+L2pOLntdrIUWzrO38DBTYaxCVIIWi0RR13JngQchvy/yks2gLKBPHIhx5R8jxvtBJvD/+gEnOWz8LM98a7JL5s6qiMdsz9QL51IcHHqpn9BlKZUSp6UK22r+AEJBGwdkOJE1W1caZmCxH62jsf1dRQ== 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=9RB7UHoObthMHYAE2FeRs8NYB1Hk9jVcnB4WR0zyBag=; b=Tokrd2vr6ZdBcDPWcZ5J0uAkNlpCAd49dlYqfyhFahUV2ZLots0OFRNntq8wf4jz8/Yq7emz22R+koY2fqC7nrXeThcIDb+1D9VMcgTNy8BTwB4DjkX6CHSySCaBbtmlhFEmsI3Sp/pxrBq8gZlWvnuKvzbW3VMm1W5kNfj+u8FOXhGh1zyBjQaubJFk1eoE4yRJhq042gS1rkLGc8n7FyF1pbp6zznrXHG9cuJlShkUYg6MolFFGAmBTvpG788NHRD14DErWHS+/qQKk64hmfwrAH4PhU3Iw3sh5JW3UKkUUwb7S9kKlZezLuLh9KJ5gzYD09TOGnuD2HnfsDv7Qw== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by PR3P250MB0210.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:179::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7316.23; Thu, 22 Feb 2024 00:37:45 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::65aa:deb0:a18e:d48d]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::65aa:deb0:a18e:d48d%5]) with mapi id 15.20.7292.033; Thu, 22 Feb 2024 00:37:45 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 22 Feb 2024 01:33:56 +0100 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [9GOEsSvHzuM9TP0ilede78QRSReiIZz9pSaJ6deyq9I=] X-ClientProxiedBy: ZR0P278CA0124.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:20::21) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20240222003358.2051977-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|PR3P250MB0210:EE_ X-MS-Office365-Filtering-Correlation-Id: e8e4d3ed-e41e-4e73-6f2f-08dc333e7cc3 X-MS-Exchange-SLBlob-MailProps: quCBMN2EvO/QMfN5car8vw15rQ65X4V4Zkr+7LAn90jV9r1c/GvYkvO5qQcWL2lM0jamRpFA4oMNM1wiRkvRBnLf0n2pfwEN23ISjEoxQKg7ckSc52OTzfwBjjXcButG18J5NGI0Iz37RUGaWE3oHFwq38dfFaKLfuWV2ikVOi4CrdxxckVM+N5PJ4W+2dJhavKubVMZKIglSR+i54nBmu/eH5wbkKRZRU1BoibSVZFFTTkaFX9IqKGfTCxJg0YUPiQt4D+s0/sqX+zsp7hJf90M8K+6aSnUnlewwtrKgiYHV5ReRJXQd2M3qCpigXNiR8elJRG6WI9mRNRBorAWYm1a0B9kt4APgaczmSG6HH/5JKni2hNCA6DgtypG8yhZwqEhjHwNrNTwypMRz7gz4QuLmBlnAOKprgCXJSuS2eg6RGSOqc3BV+jpHuooEw4nRGv25mEGdPhr19yBkVpgCQ75Ls9YSAx7GsKgW31P0BzLdwhqODvb1qGriAberCjXQmaypVgMFPtKZJR1qyt81gf9QyODs+ewMhuiIJfhvK3eDEOStCFV6O6FvSsPMSZ54SKvZQrMYUdHS6MpnOwqvZHpcCs5Kd+5Ten8Zrm4E6SSbYIbDlUsS5FA3Hqg2L27hCyqNSLxTUJfwCLCrsXzjB17LRgrnL4JT5WW9xC+Zvy6JxlclOB6X4fBXCd76b4yBpESOM50v9cuVSUcw9IuqA== X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BT7N5MdotfA+OmtPv+Mle+b8UcSpy/9Fqg/+CSPA0XDUbHUcHQ+Fowx/hPuZdKoy1ry9yFaxFp7BiIJA2C4ENUtw3eYo/i/z7CCGkZovQaQBfIqGR178Xsr2SbCMm89vCRnWrWiXJen8MgkKy2gp+/KZzG3Lt4l2T59PJlI4FADOYsNI4T9Ire8OhEnFty//G5A2OWbFq1SA6lMbgagHW3ejAZm+JK4ob9eEVlAoXn69ffFSyma4CmAsI7Ov20xMPR4ZStlVIaBDBdS3vM0MSVI0Nco610MpPFT0amYs8q4Hov6p0zLTVPwUuhG6PipoVNjvp5SJf8z3z6YnnOK/bYGS+89MB7T8BOypH0y1Qz9Q6vOjqfryNY8f9R1DWDQtwCfZf92xblkWLI/uWzNsfHYY0Aqz3CZa/eTpBZogmkaaSGNLGGxVN01DheFQjpHrMbS7BLQORq68DAF8EO7XzQndurSy/JG9ECsmwxymzuKFZsdIqRbQXSr9ESrv7mYQ7WB3M3VSymEs3xSmfZKqZz7T43R3JjRLiP9irRtTa+j7+QV0pv0GHsdaMbQwJ9HiKZNkT8VjkbrpUCsrXYR+TBD/ZUxi13tJyReqvFlx85T/8z9mYyew14qSRWGKKnqK X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: pOkZKzEU2Jz9yTTSHYuSvsasR7Vk1yRX7N/hsn0mFmUVWRWnEgTKGA20INmWR+TUGDlWYp+4YKlVl+WIhtqbxgyotcBwenmTiXb3DBA0vIQNn2GB3O5DotKnZQKSs7d3uEgKJunSqMLaP9L/Cq9kewgmQfSivpkWva5ZUexRhbqUnYTjNWqvK+Drs/EmDGv77+lHa6JvB2ajvBMVrF6KBXE2XbJ8uJTVF8v3w/WTVR/5UjNbDdI4/U/gkS5VjaDqRRxzNeFF9MfuwXg+09YGqCn/YV0m600i8InrONOI2HaEB7t06+b1zDdg2pis5518M02eLwA+JZs1y+HElju2LUS59h72QFLnXF+ygCij4t1SKOQ1uLddSM2B36B7m0YP0oQFKwcCx2xa+Hu70oLamHR9TCMnZzKLS1s4rWzVhM07OOdTkzHcHArsDLvmrBo9/VkDEPSAszBU4XvJ1wQTaSe5/blTf6gKtNDVClCH0JH8M3UU5axb1jAZ8egi1fY7vqDKxo/hT2uOPgdudeXwx5NkiZUju5OARIw9ifT+0VQggISMxat7VMxVteCOwcH5fuKYVgsNKanKthr+pDEeKYfQvPRdEDSctD9mL2byZD9Sf4GSCegfIvxqnNHVIrW8npJZbsIM57Z58Lx6KgcOE168caNcvPoc5MdKDani2K/2DLioEOost+0ro+0fDkLz1s5thuKs8Y0CgUff+klRnmIqvrfqjkclQfLoxThHVfT6CvMUWXCvGtDrrb3Nfyxu7xCTcs+T9oZnwuTsa4eGwgmRX6eSqLe/ctEhATo3Jj7pefOOfiuDrazfZGt5qt34Pp2fG8+1CizfqzbjQlOUqkLlall/QsC/NlVf9YetQP7AtmrxgM+W7Ay8yWR7yN/j1WFo48kiP8MhQcFkSoU3gOgbhScZJdGEfKUNmuHFSjzWcv16GDypaWkMjWfhRcJHhqjsNrs/PafdBmRGZPWfsrtcwSj9b6yQkHkIqSqc6CU7ukpOSeVjta60bK/gircwxS6zLYdjVjo4fkXmLQZck1vgLL1GA0fCv1GpIYoJmIfCcs5SxjEPLVAvE+JSrSvGkWZqhf0nuxGo2hqA0jEYozEtFqOB+GTmgXUwLdwqIFK7Hchf90URrU+Ei2GrENVzBCMATMBNHK3eSMAG8DADkIleejCedzgQ9ZehNkLmeIR+dC4zhVFbG4YUDQqucLXB0DHvQbgNrRZxQ6IWsxmIhOu0W4URkXE9mfL0LxjGT/IyjFQX1zJSYfsz5FMmv/z/vttbiKVtObvRXptM7kSokw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e8e4d3ed-e41e-4e73-6f2f-08dc333e7cc3 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Feb 2024 00:37:45.5628 (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: PR3P250MB0210 Subject: [FFmpeg-devel] [PATCH 2/4] fftools/ffprobe: Constify printing section header 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: APil4Xgb1OQt Allows to avoid casting const away. Signed-off-by: Andreas Rheinhardt --- fftools/ffprobe.c | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index 95643f9a23..e63935baba 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -228,16 +228,18 @@ struct section { const char *element_name; ///< name of the contained element, if provided const char *unique_name; ///< unique section name, in case the name is ambiguous AVDictionary *entries_to_show; - const char *(* get_type)(void *data); ///< function returning a type if defined, must be defined when SECTION_FLAG_HAS_TYPE is defined + const char *(* get_type)(const void *data); ///< function returning a type if defined, must be defined when SECTION_FLAG_HAS_TYPE is defined int show_all_entries; }; -static const char *get_packet_side_data_type(void *data) { +static const char *get_packet_side_data_type(const void *data) +{ const AVPacketSideData *sd = (const AVPacketSideData *)data; return av_x_if_null(av_packet_side_data_name(sd->type), "unknown"); } -static const char *get_frame_side_data_type(void *data) { +static const char *get_frame_side_data_type(const void *data) +{ const AVFrameSideData *sd = (const AVFrameSideData *)data; return av_x_if_null(av_frame_side_data_name(sd->type), "unknown"); } @@ -474,7 +476,7 @@ typedef struct Writer { int (*init) (WriterContext *wctx); void (*uninit)(WriterContext *wctx); - void (*print_section_header)(WriterContext *wctx, void *data); + void (*print_section_header)(WriterContext *wctx, const void *data); void (*print_section_footer)(WriterContext *wctx); void (*print_integer) (WriterContext *wctx, const char *, long long int); void (*print_rational) (WriterContext *wctx, AVRational *q, char *sep); @@ -728,7 +730,7 @@ fail: } static inline void writer_print_section_header(WriterContext *wctx, - void *data, + const void *data, int section_id) { int parent_section_id; @@ -1056,7 +1058,7 @@ static inline char *upcase_string(char *dst, size_t dst_size, const char *src) return dst; } -static void default_print_section_header(WriterContext *wctx, void *data) +static void default_print_section_header(WriterContext *wctx, const void *data) { DefaultContext *def = wctx->priv; char buf[32]; @@ -1226,7 +1228,7 @@ static av_cold int compact_init(WriterContext *wctx) return 0; } -static void compact_print_section_header(WriterContext *wctx, void *data) +static void compact_print_section_header(WriterContext *wctx, const void *data) { CompactContext *compact = wctx->priv; const struct section *section = wctx->section[wctx->level]; @@ -1423,7 +1425,7 @@ static const char *flat_escape_value_str(AVBPrint *dst, const char *src) return dst->str; } -static void flat_print_section_header(WriterContext *wctx, void *data) +static void flat_print_section_header(WriterContext *wctx, const void *data) { FlatContext *flat = wctx->priv; AVBPrint *buf = &wctx->section_pbuf[wctx->level]; @@ -1523,7 +1525,7 @@ static char *ini_escape_str(AVBPrint *dst, const char *src) return dst->str; } -static void ini_print_section_header(WriterContext *wctx, void *data) +static void ini_print_section_header(WriterContext *wctx, const void *data) { INIContext *ini = wctx->priv; AVBPrint *buf = &wctx->section_pbuf[wctx->level]; @@ -1634,7 +1636,7 @@ static const char *json_escape_str(AVBPrint *dst, const char *src, void *log_ctx #define JSON_INDENT() writer_printf(wctx, "%*c", json->indent_level * 4, ' ') -static void json_print_section_header(WriterContext *wctx, void *data) +static void json_print_section_header(WriterContext *wctx, const void *data) { JSONContext *json = wctx->priv; AVBPrint buf; @@ -1795,7 +1797,7 @@ static av_cold int xml_init(WriterContext *wctx) #define XML_INDENT() writer_printf(wctx, "%*c", xml->indent_level * 4, ' ') -static void xml_print_section_header(WriterContext *wctx, void *data) +static void xml_print_section_header(WriterContext *wctx, const void *data) { XMLContext *xml = wctx->priv; const struct section *section = wctx->section[wctx->level]; @@ -2334,7 +2336,7 @@ static void print_pkt_side_data(WriterContext *w, { const char *name = av_packet_side_data_name(sd->type); - writer_print_section_header(w, (void *)sd, id_data); + writer_print_section_header(w, sd, id_data); print_str("side_data_type", name ? name : "unknown"); if (sd->type == AV_PKT_DATA_DISPLAYMATRIX && sd->size >= 9*4) { double rotation = av_display_rotation_get((int32_t *)sd->data); @@ -2635,7 +2637,7 @@ static void print_frame_side_data(WriterContext *w, const AVFrameSideData *sd = frame->side_data[i]; const char *name; - writer_print_section_header(w, (void *)sd, SECTION_ID_FRAME_SIDE_DATA); + writer_print_section_header(w, sd, SECTION_ID_FRAME_SIDE_DATA); name = av_frame_side_data_name(sd->type); print_str("side_data_type", name ? name : "unknown"); if (sd->type == AV_FRAME_DATA_DISPLAYMATRIX && sd->size >= 9*4) {