summaryrefslogtreecommitdiff
path: root/main/message.c
diff options
context:
space:
mode:
authorBrent Eagles <beagles@digium.com>2012-09-28 13:04:11 +0000
committerBrent Eagles <beagles@digium.com>2012-09-28 13:04:11 +0000
commit89d427ca2465e8dfa4f6f490bb884259092e0023 (patch)
treec73e7b128c8f6ca2167044c05624d0eaebfe1b95 /main/message.c
parentb6a00a1d976f30251332c2ae0ec95514d794968f (diff)
Reset hangup flags on channels created through messages and cleanup globals
in res_xmpp on unload. This patch fixes an issue where hangup flags were not being reset on a channel, affecting subsequent use of that channel. The patch also adds some additional cleanup to res_xmpp to fix an issue with reloading the module. (closes ASTERISK-20360) Reported by: Noah Engelberth Tested by: beagles Review: https://reviewboard.asterisk.org/r/2134/ ........ Merged revisions 374019 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@374020 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/message.c')
-rw-r--r--main/message.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/main/message.c b/main/message.c
index 26fea1aca..c04413dc8 100644
--- a/main/message.c
+++ b/main/message.c
@@ -752,6 +752,10 @@ static void chan_cleanup(struct ast_channel *chan)
if (msg_ds) {
ast_channel_datastore_add(chan, msg_ds);
}
+ /*
+ * Clear softhangup flags.
+ */
+ ast_channel_clear_softhangup(chan, AST_SOFTHANGUP_ALL);
ast_channel_unlock(chan);
}