[FFmpeg-devel] [PATCH 2/2] avformat/udp: remove local localaddr array

Martin Storsjö martin at martin.st
Thu Nov 25 12:54:47 EET 2021


On Thu, 25 Nov 2021, lance.lmwang at gmail.com wrote:

> From: Limin Wang <lance.lmwang at gmail.com>
>
> Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> ---
> libavformat/udp.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/libavformat/udp.c b/libavformat/udp.c
> index bbe5aec..b8b0e19 100644
> --- a/libavformat/udp.c
> +++ b/libavformat/udp.c
> @@ -623,7 +623,7 @@ end:
> /* return non zero if error */
> static int udp_open(URLContext *h, const char *uri, int flags)
> {
> -    char hostname[1024], localaddr[1024] = "";
> +    char hostname[1024];
>     int port, udp_fd = -1, tmp, bind_ret = -1, dscp = -1;
>     UDPContext *s = h->priv_data;
>     int is_output;
> @@ -708,7 +708,8 @@ static int udp_open(URLContext *h, const char *uri, int flags)
>             s->burst_bits = strtoll(buf, NULL, 10);
>         }
>         if (av_find_info_tag(buf, sizeof(buf), "localaddr", p)) {
> -            av_strlcpy(localaddr, buf, sizeof(localaddr));
> +            av_freep(&s->localaddr);
> +            s->localaddr = av_strdup(buf);
>         }
>         if (av_find_info_tag(buf, sizeof(buf), "sources", p)) {
>             if ((ret = ff_ip_parse_sources(h, buf, &s->filters)) < 0)
> @@ -748,10 +749,7 @@ static int udp_open(URLContext *h, const char *uri, int flags)
>     if ((s->is_multicast || s->local_port <= 0) && (h->flags & AVIO_FLAG_READ))
>         s->local_port = port;
>
> -    if (localaddr[0])
> -        udp_fd = udp_socket_create(h, &my_addr, &len, localaddr);
> -    else
> -        udp_fd = udp_socket_create(h, &my_addr, &len, s->localaddr);
> +    udp_fd = udp_socket_create(h, &my_addr, &len, s->localaddr);
>     if (udp_fd < 0)
>         goto fail;
>
> -- 
> 1.8.3.1

This patch LGTM.

// Martin



More information about the ffmpeg-devel mailing list