[FFmpeg-devel] [PATCH] avformat/rtsp: Put strings instead of pointers to strings into array
Andreas Rheinhardt
andreas.rheinhardt at gmail.com
Mon Apr 20 19:27:07 EEST 2020
Marton Balint:
>
>
> 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
Applied, thanks.
- Andreas
More information about the ffmpeg-devel
mailing list