diff --git a/adsbus.c b/adsbus.c index 32be675..f574fb9 100644 --- a/adsbus.c +++ b/adsbus.c @@ -56,9 +56,7 @@ static bool parse_opts(int argc, char *argv[], int epoll_fd) { *delim = '\0'; delim++; - // TODO: Fix orphan malloc. - struct backend *backend = backend_new(optarg, delim, epoll_fd); - assert(backend); + backend_new(optarg, delim, epoll_fd); break; case 'd': diff --git a/backend.c b/backend.c index 7ed8c20..8484da1 100644 --- a/backend.c +++ b/backend.c @@ -43,7 +43,7 @@ struct parser { #define NUM_PARSERS (sizeof(parsers) / sizeof(*parsers)) -struct backend *backend_new(char *node, char *service, int epoll_fd) { +void backend_new(char *node, char *service, int epoll_fd) { struct backend *backend = malloc(sizeof(*backend)); assert(backend); backend->peer.fd = -1; @@ -54,7 +54,6 @@ struct backend *backend_new(char *node, char *service, int epoll_fd) { memset(backend->parser_state, 0, PARSER_STATE_LEN); backend->parser = backend_autodetect_parse; backend_connect(backend, epoll_fd); - return backend; } static void backend_connect(struct backend *backend, int epoll_fd) { diff --git a/backend.h b/backend.h index 9821cea..dbab29c 100644 --- a/backend.h +++ b/backend.h @@ -21,4 +21,4 @@ struct backend { parser parser; }; -struct backend *backend_new(char *node, char *service, int epoll_fd); +void backend_new(char *node, char *service, int epoll_fd);