diff options
author | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2012-03-26 08:54:17 +0200 |
---|---|---|
committer | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2012-04-02 14:52:01 +0200 |
commit | e9193626202ed4b13586eaf0f422e0c9079fe9ce (patch) | |
tree | 4c980041b1e8aac1d61a2a5716d2ea5d727b677e /src/dnsproxy.c | |
parent | ed7db8b348408c6b5bc199578efd447e4ea63506 (diff) | |
download | connman-e9193626202ed4b13586eaf0f422e0c9079fe9ce.tar.gz connman-e9193626202ed4b13586eaf0f422e0c9079fe9ce.tar.bz2 connman-e9193626202ed4b13586eaf0f422e0c9079fe9ce.zip |
dnsproxy: Refactor request destroy code
Move common code into a function for destroying the request data.
Diffstat (limited to 'src/dnsproxy.c')
-rw-r--r-- | src/dnsproxy.c | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/src/dnsproxy.c b/src/dnsproxy.c index 7c75dd88..4033f2ab 100644 --- a/src/dnsproxy.c +++ b/src/dnsproxy.c @@ -2650,6 +2650,17 @@ static int create_listener(struct listener_data *ifdata) return 0; } +static void destroy_request_data(struct request_data *req) +{ + if (req->timeout > 0) + g_source_remove(req->timeout); + + g_free(req->resp); + g_free(req->request); + g_free(req->name); + g_free(req); +} + static void destroy_listener(struct listener_data *ifdata) { GSList *list; @@ -2662,13 +2673,7 @@ static void destroy_listener(struct listener_data *ifdata) DBG("Dropping pending request (id 0x%04x -> 0x%04x)", req->srcid, req->dstid); - if (req->timeout > 0) - g_source_remove(req->timeout); - - g_free(req->resp); - g_free(req->request); - g_free(req->name); - g_free(req); + destroy_request_data(req); list->data = NULL; } @@ -2680,13 +2685,7 @@ static void destroy_listener(struct listener_data *ifdata) DBG("Dropping request (id 0x%04x -> 0x%04x)", req->srcid, req->dstid); - if (req->timeout > 0) - g_source_remove(req->timeout); - - g_free(req->resp); - g_free(req->request); - g_free(req->name); - g_free(req); + destroy_request_data(req); list->data = NULL; } |