From d43e60cba1e291ce30b3130149c46dc6ceb5c0a9 Mon Sep 17 00:00:00 2001 From: Richard Fuchs Date: Wed, 27 Jul 2022 14:33:19 -0400 Subject: [PATCH] TT#14008 fix mem leak fixes a merge gone wrong closes #1512 Change-Id: Ibe114973ab2e0fe7f40c07b6eed20ac9be5ef1cb (cherry picked from commit 6e0c4f3e0126374c2e09d544caaaf4b8e01b2794) --- daemon/websocket.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/daemon/websocket.c b/daemon/websocket.c index 89f6a417c..1ac151832 100644 --- a/daemon/websocket.c +++ b/daemon/websocket.c @@ -620,12 +620,6 @@ static int websocket_conn_init(struct lws *wsi, void *p) { return -1; memset(wc, 0, sizeof(*wc)); - wc->wsi = wsi; - mutex_init(&wc->lock); - cond_init(&wc->cond); - g_queue_init(&wc->messages); - g_queue_push_tail(&wc->output_q, websocket_output_new()); - wc->janus_sessions = g_hash_table_new(g_direct_hash, g_direct_equal); struct sockaddr_storage sa = {0,}; socklen_t sl = sizeof(sa); @@ -646,22 +640,20 @@ static int websocket_conn_init(struct lws *wsi, void *p) { int fd = lws_get_socket_fd(wsi); #endif - memset(wc, 0, sizeof(*wc)); - if (getpeername(fd, (struct sockaddr *) &sa, &sl)) { ilogs(http, LOG_ERR, "Failed to get remote address of HTTP/WS connection (fd %i): %s", fd, strerror(errno)); return -1; - } else { - endpoint_parse_sockaddr_storage(&wc->endpoint, &sa); } + endpoint_parse_sockaddr_storage(&wc->endpoint, &sa); wc->wsi = wsi; mutex_init(&wc->lock); cond_init(&wc->cond); g_queue_init(&wc->messages); g_queue_push_tail(&wc->output_q, websocket_output_new()); wc->wm = websocket_message_new(wc); + wc->janus_sessions = g_hash_table_new(g_direct_hash, g_direct_equal); return 0; }