From: Kinsey Moore Date: Mon, 7 Apr 2014 13:30:25 +0000 (+0000) Subject: PJSIP: Fix crash introduced in r411671 X-Git-Tag: 13.0.0-beta1~378 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5d9a1281eebe29bd6b0a370514be6a29dac5af28;p=thirdparty%2Fasterisk.git PJSIP: Fix crash introduced in r411671 The test event introduced in revision 411671 uses a dangling pointer to access information about pubsub state changes. This moves the event to within the lifetime of the pointer. ........ Merged revisions 411790 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411791 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/res/res_pjsip_pubsub.c b/res/res_pjsip_pubsub.c index 0b53af6c03..468346024d 100644 --- a/res/res_pjsip_pubsub.c +++ b/res/res_pjsip_pubsub.c @@ -466,17 +466,16 @@ pjsip_dialog *ast_sip_subscription_get_dlg(struct ast_sip_subscription *sub) int ast_sip_subscription_send_request(struct ast_sip_subscription *sub, pjsip_tx_data *tdata) { struct ast_sip_endpoint *endpoint = ast_sip_subscription_get_endpoint(sub); - int res = pjsip_evsub_send_request(ast_sip_subscription_get_evsub(sub), - tdata) == PJ_SUCCESS ? 0 : -1; - + ast_test_suite_event_notify("SUBSCRIPTION_STATE_SET", "StateText: %s\r\n" "Endpoint: %s\r\n", pjsip_evsub_get_state_name(ast_sip_subscription_get_evsub(sub)), ast_sorcery_object_get_id(endpoint)); - ao2_cleanup(endpoint); - return res; + + return pjsip_evsub_send_request(ast_sip_subscription_get_evsub(sub), + tdata) == PJ_SUCCESS ? 0 : -1; } static void subscription_datastore_destroy(void *obj)