From b47cf1a7d6aba11b145b14883e8c607362756001 Mon Sep 17 00:00:00 2001 From: Richard Mudgett Date: Wed, 1 Feb 2017 17:56:13 -0600 Subject: [PATCH] res_pjsip: Fix some off nominal tdata leaks. Change-Id: I243a4be5e7fbfe604923764969c4ee04eee89b9d --- res/res_pjsip.c | 1 + res/res_pjsip_mwi.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/res/res_pjsip.c b/res/res_pjsip.c index 82d06dc629..347c579912 100644 --- a/res/res_pjsip.c +++ b/res/res_pjsip.c @@ -3551,6 +3551,7 @@ static pj_status_t endpt_send_request(struct ast_sip_endpoint *endpoint, if (!cb && token) { /* Silly. Without a callback we cannot do anything with token. */ + pjsip_tx_data_dec_ref(tdata); return PJ_EINVAL; } diff --git a/res/res_pjsip_mwi.c b/res/res_pjsip_mwi.c index 925556ed48..e625df77a7 100644 --- a/res/res_pjsip_mwi.c +++ b/res/res_pjsip_mwi.c @@ -502,6 +502,7 @@ static int send_unsolicited_mwi_notify_to_contact(void *obj, void *arg, int flag body.subtype = MWI_SUBTYPE; body_text = ast_str_create(64); if (!body_text) { + pjsip_tx_data_dec_ref(tdata); return 0; } @@ -517,6 +518,7 @@ static int send_unsolicited_mwi_notify_to_contact(void *obj, void *arg, int flag if (ast_sip_pubsub_generate_body_content(body.type, body.subtype, &body_data, &body_text)) { ast_log(LOG_WARNING, "Unable to generate SIP MWI NOTIFY body.\n"); ast_free(body_text); + pjsip_tx_data_dec_ref(tdata); return 0; }