From edbed4cc15a250e4b7c12d3d322b8a6575582c21 Mon Sep 17 00:00:00 2001 From: Daniel-Constantin Mierla Date: Thu, 8 Jan 2015 16:00:47 +0100 Subject: [PATCH] dmq: be sure dmq_init_callback_done is initialized before accessing it (cherry picked from commit b29a45f0a23ef0f1a26598a45d3e6eddc9dbedb5) --- modules/dmq/notification_peer.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/dmq/notification_peer.c b/modules/dmq/notification_peer.c index b4937177e5c..2e87c77afd4 100644 --- a/modules/dmq/notification_peer.c +++ b/modules/dmq/notification_peer.c @@ -29,7 +29,7 @@ str notification_content_type = str_init("text/plain"); dmq_resp_cback_t notification_callback = {¬ification_resp_callback_f, 0}; -int *dmq_init_callback_done; +int *dmq_init_callback_done = 0; /** @@ -229,7 +229,7 @@ int dmq_notification_callback(struct sip_msg* msg, peer_reponse_t* resp, dmq_nod ¬ification_callback, maxforwards, ¬ification_content_type); } pkg_free(response_body); - if (!*dmq_init_callback_done) { + if (dmq_init_callback_done && !*dmq_init_callback_done) { *dmq_init_callback_done = 1; run_init_callbacks(); } @@ -325,7 +325,7 @@ int notification_resp_callback_f(struct sip_msg* msg, int code, if(code == 200) { nodes_recv = extract_node_list(node_list, msg); LM_DBG("received %d new or changed nodes\n", nodes_recv); - if (!*dmq_init_callback_done) { + if (dmq_init_callback_done && !*dmq_init_callback_done) { *dmq_init_callback_done = 1; run_init_callbacks(); }