[FFmpeg-devel] [PATCH] avformat/rtsp: Put strings instead of pointers to strings into array
Marton Balint
cus at passwd.hu
Mon Apr 20 10:53:59 EEST 2020
On Mon, 20 Apr 2020, Andreas Rheinhardt wrote:
> In this example, the difference in length between the shortest and
> longest string is three, so that not using pointers to strings saves
> space even on 32bit systems.
>
> Moreover, there is no need to use a sentinel here; it can be replaced
> with FF_ARRAY_ELEMS.
>
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
> ---
> I have to admit that this is untested.
>
> libavformat/rtsp.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
> index 0a6462000d..b2b3f32011 100644
> --- a/libavformat/rtsp.c
> +++ b/libavformat/rtsp.c
> @@ -2526,10 +2526,11 @@ static int rtp_read_header(AVFormatContext *s)
>
> p = strchr(s->url, '?');
> if (p) {
> - static const char *filters[][2] = {{"sources", "incl"}, {"block", "excl"}, {NULL, NULL}};
> + static const char filters[][2][8] = { { "sources", "incl" },
> + { "block", "excl" } };
> int i;
> char *q;
> - for (i = 0; filters[i][0]; i++) {
> + for (i = 0; i < FF_ARRAY_ELEMS(filters); i++) {
> if (av_find_info_tag(filters_buf, sizeof(filters_buf), filters[i][0], p)) {
> q = filters_buf;
> while ((q = strchr(q, ',')) != NULL)
LGTM, thanks.
Marton
More information about the ffmpeg-devel
mailing list