[pulseaudio-discuss] [PATCH] socket-server: pa_socket_server_new() can't fail, so don't check its return value

Tanu Kaskinen tanu.kaskinen at linux.intel.com
Mon Nov 3 01:47:58 PST 2014


An assertion was already used in pa_socket_server_new_unix(), this
makes the TCP variants consistent with that.

Even if pa_socket_server_new() could fail, the error handling wasn't
good, because there was no "goto fail", meaning that the fd would have
been leaked.
---
 src/pulsecore/socket-server.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/pulsecore/socket-server.c b/src/pulsecore/socket-server.c
index 25a2f8a..7c513cb 100644
--- a/src/pulsecore/socket-server.c
+++ b/src/pulsecore/socket-server.c
@@ -275,10 +275,10 @@ pa_socket_server* pa_socket_server_new_ipv4(pa_mainloop_api *m, uint32_t address
         goto fail;
     }
 
-    if ((ss = pa_socket_server_new(m, fd))) {
-        ss->type = SOCKET_SERVER_IPV4;
-        ss->tcpwrap_service = pa_xstrdup(tcpwrap_service);
-    }
+    pa_assert_se(ss = pa_socket_server_new(m, fd));
+
+    ss->type = SOCKET_SERVER_IPV4;
+    ss->tcpwrap_service = pa_xstrdup(tcpwrap_service);
 
     return ss;
 
@@ -343,10 +343,10 @@ pa_socket_server* pa_socket_server_new_ipv6(pa_mainloop_api *m, const uint8_t ad
         goto fail;
     }
 
-    if ((ss = pa_socket_server_new(m, fd))) {
-        ss->type = SOCKET_SERVER_IPV6;
-        ss->tcpwrap_service = pa_xstrdup(tcpwrap_service);
-    }
+    pa_assert_se(ss = pa_socket_server_new(m, fd));
+
+    ss->type = SOCKET_SERVER_IPV6;
+    ss->tcpwrap_service = pa_xstrdup(tcpwrap_service);
 
     return ss;
 
-- 
1.9.3



More information about the pulseaudio-discuss mailing list