From 76dab00cdac01e1202951511ad3ec27c21c257d7 Mon Sep 17 00:00:00 2001 From: Sumit Bose Date: Nov 02 2010 20:29:00 +0000 Subject: Fix double free issue --- diff --git a/src/responder/common/responder_dp.c b/src/responder/common/responder_dp.c index c8ed1b7..e1670f9 100644 --- a/src/responder/common/responder_dp.c +++ b/src/responder/common/responder_dp.c @@ -95,12 +95,12 @@ static int sss_dp_req_destructor(void *ptr) cb = sdp_req->cb_list; while (cb) { + next = cb->next; + /* It is the responsibility of the callback to free cb */ cb->callback(sdp_req->err_maj, sdp_req->err_min, sdp_req->err_msg, cb->callback_ctx); - next = cb->next; - talloc_free(cb); cb = next; }