From: Julien Massot Date: Wed, 14 Mar 2012 08:59:07 +0000 (+0000) Subject: dnsproxy: Remove pending requests before destroying the channel X-Git-Tag: 2.0_alpha~497 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=791e46222bd1d67bc21182a930a119a910a86c6f;p=framework%2Fconnectivity%2Fconnman.git dnsproxy: Remove pending requests before destroying the channel This fixes a segfault in request_timeout when disabling tethering. --- diff --git a/src/dnsproxy.c b/src/dnsproxy.c index e0b8da2..7c75dd8 100644 --- a/src/dnsproxy.c +++ b/src/dnsproxy.c @@ -2662,6 +2662,8 @@ 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); @@ -2678,6 +2680,8 @@ 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);