[FFmpeg-devel] [PATCH]lavf:Constify AVInputFormat pointer
Carl Eugen Hoyos
ceffmpeg at gmail.com
Sat Feb 9 15:37:04 EET 2019
2019-02-01 1:13 GMT+01:00, Michael Niedermayer <michael at niedermayer.cc>:
> On Thu, Jan 31, 2019 at 09:54:14PM +0100, Carl Eugen Hoyos wrote:
>> 2019-01-31 21:43 GMT+01:00, Carl Eugen Hoyos <ceffmpeg at gmail.com>:
>> > Hi!
>> >
>> > Attached patch persistently uses "const" for AVInputFormat pointer
>> > after the next version bump.
>>
>> Now with an actually working version.
>>
>> Please comment, Carl Eugen
>
>> allformats.c | 6 +++++-
>> avformat.h | 32 +++++++++++++++++++++++++++++++-
>> dashdec.c | 3 +++
>> format.c | 32 ++++++++++++++++++++++++++++++--
>> hls.c | 3 +++
>> img2dec.c | 2 +-
>> mpeg.c | 3 +++
>> rtpdec_asf.c | 3 +++
>> sapdec.c | 3 +++
>> utils.c | 11 ++++++++---
>> version.h | 3 +++
>> 11 files changed, 93 insertions(+), 8 deletions(-)
>> d3aece2f0b9a9c3ff8b2a187ceccdc744ea40de2
>> 0001-lavf-Constify-AVInputFormat-pointer.patch
>> From f383a7f914b2c7240378b404d529a7d73c68941b Mon Sep 17 00:00:00 2001
>> From: Carl Eugen Hoyos <ceffmpeg at gmail.com>
>> Date: Thu, 31 Jan 2019 21:51:56 +0100
>> Subject: [PATCH] lavf: Constify AVInputFormat pointer.
>>
>> ---
>> libavformat/allformats.c | 6 +++++-
>> libavformat/avformat.h | 32 +++++++++++++++++++++++++++++++-
>> libavformat/dashdec.c | 3 +++
>> libavformat/format.c | 32 ++++++++++++++++++++++++++++++--
>> libavformat/hls.c | 3 +++
>> libavformat/img2dec.c | 2 +-
>> libavformat/mpeg.c | 3 +++
>> libavformat/rtpdec_asf.c | 3 +++
>> libavformat/sapdec.c | 3 +++
>> libavformat/utils.c | 11 ++++++++---
>> libavformat/version.h | 3 +++
>> 11 files changed, 93 insertions(+), 8 deletions(-)
>>
>> diff --git a/libavformat/allformats.c b/libavformat/allformats.c
>> index 0684498..01c4c14 100644
>> --- a/libavformat/allformats.c
>> +++ b/libavformat/allformats.c
>> @@ -583,7 +583,11 @@ AVInputFormat *av_iformat_next(const AVInputFormat
>> *f)
>> ff_thread_once(&av_format_next_init, av_format_init_next);
>>
>> if (f)
>> - return f->next;
>> + return
>> +#if !FF_API_AVINPUTFORMAT
>> + (AVInputFormat *)
>> +#endif
>> + f->next;
>> else {
>> void *opaque = NULL;
>> return (AVInputFormat *)av_demuxer_iterate(&opaque);
>> diff --git a/libavformat/avformat.h b/libavformat/avformat.h
>> index fdaffa5..7c4ec8f 100644
>> --- a/libavformat/avformat.h
>> +++ b/libavformat/avformat.h
>> @@ -676,7 +676,10 @@ typedef struct AVInputFormat {
>> * New public fields should be added right above.
>> *****************************************************************
>> */
>> - struct AVInputFormat *next;
>> +#if !FF_API_AVINPUTFORMAT
>> + const
>> +#endif
>> +struct AVInputFormat *next;
>
> some av_const59 which is defined to nothing until version 59
> should avoid the repeated #if/endif
> it would require an eventual update to change it to const at some
> point but it would avoid most preprocessor comands
New patch attached.
Please comment, Carl Eugen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-lavf-Constify-AVInputFormat-pointer.patch
Type: text/x-patch
Size: 12776 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190209/99d0c026/attachment.bin>
More information about the ffmpeg-devel
mailing list