[FFmpeg-devel] [PATCH]lavf:Constify AVInputFormat pointer
Michael Niedermayer
michael at niedermayer.cc
Fri Feb 1 02:13:04 EET 2019
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
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
The bravest are surely those who have the clearest vision
of what is before them, glory and danger alike, and yet
notwithstanding go out to meet it. -- Thucydides
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190201/1737d7b7/attachment.sig>
More information about the ffmpeg-devel
mailing list