From 7814913d869bd53f12d1072f62fe1f5ac376b13d Mon Sep 17 00:00:00 2001 From: Mark Michelson Date: Tue, 18 May 2010 21:09:41 +0000 Subject: [PATCH] Be sure to heap-allocate the redirecting to tag so as not to cause crashiness. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@263860 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_sip.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 115426b5bc..9bb79167ad 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -17540,6 +17540,10 @@ static void change_redirecting_information(struct sip_pvt *p, struct sip_request ast_free(redirecting->from.tag); } redirecting->from.tag = ast_strdup(p->cid_tag); + if (redirecting->to.tag) { + ast_free(redirecting->to.tag); + } + redirecting->to.tag = ast_strdup(p->cid_tag); } if (!ast_strlen_zero(redirecting_to_number)) { if (redirecting->to.number) { @@ -17555,7 +17559,6 @@ static void change_redirecting_information(struct sip_pvt *p, struct sip_request ast_debug(3, "Got redirecting to name %s\n", redirecting_from_number); redirecting->to.name = redirecting_to_name; } - redirecting->to.tag = (char *) p->cid_tag; redirecting->reason = reason; }