res_pjsip_pubsub: fixed a bug when pjsip_tx_data_dec_ref is called twice.
authorAlexei Gradinari <alex2grad@gmail.com>
Thu, 21 Jul 2016 15:28:36 +0000 (11:28 -0400)
committerAlexei Gradinari <alex2grad@gmail.com>
Thu, 21 Jul 2016 15:29:15 +0000 (11:29 -0400)
This patch removed call of pjsip_tx_data_dec_ref in send_notify
if send_request failed.
The pjsip_dlg_send_request deletes the message on error by itself.

It seems this patch fixes next issues:
ASTERISK-26199
ASTERISK-26166
ASTERISK-26174

Change-Id: I8b05917c93d993f95d604c042ace5f1a5500f59a

res/res_pjsip_pubsub.c

index 207fae0..fe16c61 100644 (file)
@@ -2249,7 +2249,7 @@ static int send_notify(struct sip_subscription_tree *sub_tree, unsigned int forc
        }
 
        if (sip_subscription_send_request(sub_tree, tdata)) {
-               pjsip_tx_data_dec_ref(tdata);
+               /* do not call pjsip_tx_data_dec_ref(tdata). The pjsip_dlg_send_request deletes the message on error */
                return -1;
        }