diff options
author | Liong Sauw Ming <ming@teluu.com> | 2015-12-31 05:25:45 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2015-12-31 05:25:45 +0000 |
commit | 82656e80c94a3ce0bd758d2187afda61913a198c (patch) | |
tree | 19259a5b018ae66adb5b660b2b7170e05a89817d /pjsip/src | |
parent | fdd5233b23cd1bda248b73aa6e8d9e06b7eba18d (diff) |
Re #1882 (misc): close socket on error after calling pj_sock_getsockname() as it was closed above on error after calling get_published_name()
Thanks to Dusan Klinec for the patch
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5230 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/src')
-rw-r--r-- | pjsip/src/pjsip/sip_transport_udp.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/pjsip/src/pjsip/sip_transport_udp.c b/pjsip/src/pjsip/sip_transport_udp.c index f11cafaf..9c87fb84 100644 --- a/pjsip/src/pjsip/sip_transport_udp.c +++ b/pjsip/src/pjsip/sip_transport_udp.c @@ -1090,8 +1090,10 @@ PJ_DEF(pj_status_t) pjsip_udp_transport_restart(pjsip_transport *transport, /* Init local address. */ status = pj_sock_getsockname(sock, &tp->base.local_addr, &tp->base.addr_len); - if (status != PJ_SUCCESS) - return status; + if (status != PJ_SUCCESS) { + pj_sock_close(sock); + return status; + } /* Assign the socket and published address to transport. */ udp_set_socket(tp, sock, a_name); |