summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2022-01-10 17:41:02 +0100
committerAnton Khirnov <anton@khirnov.net>2022-01-11 09:07:39 +0100
commit3c2b67446875f925909fa33d8ee14264e11c293d (patch)
tree87771ad4a5ed2b9656bc641045ec019cb5bbe701 /libavformat
parentbbf00916e45ac8754f208c0584834cb330a89da2 (diff)
lavf/udp: do not return an uninitialized value from udp_open()
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/udp.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libavformat/udp.c b/libavformat/udp.c
index b8b0e19609..180d96a988 100644
--- a/libavformat/udp.c
+++ b/libavformat/udp.c
@@ -739,8 +739,10 @@ static int udp_open(URLContext *h, const char *uri, int flags)
/* XXX: fix av_url_split */
if (hostname[0] == '\0' || hostname[0] == '?') {
/* only accepts null hostname if input */
- if (!(flags & AVIO_FLAG_READ))
+ if (!(flags & AVIO_FLAG_READ)) {
+ ret = AVERROR(EINVAL);
goto fail;
+ }
} else {
if ((ret = ff_udp_set_remote_url(h, uri)) < 0)
goto fail;
@@ -750,8 +752,10 @@ static int udp_open(URLContext *h, const char *uri, int flags)
s->local_port = port;
udp_fd = udp_socket_create(h, &my_addr, &len, s->localaddr);
- if (udp_fd < 0)
+ if (udp_fd < 0) {
+ ret = AVERROR(EIO);
goto fail;
+ }
s->local_addr_storage=my_addr; //store for future multicast join