summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
authorKinsey Moore <kmoore@digium.com>2012-06-05 14:41:43 +0000
committerKinsey Moore <kmoore@digium.com>2012-06-05 14:41:43 +0000
commit571445ab9c9f268abfa7cdea1f80d199686c5fac (patch)
treebcaac031cac910fbc4aa613cb62700bcca8f8a48 /main
parentd210685a20c950e418b84e3c6f085e2f7f19f299 (diff)
Convert AST_FLAG_ANSWERED_ELSEWHERE usage to AST_CAUSE_ANSWERED_ELSEWHERE
This was essentially duplicated functionality where normal channels used AST_CAUSE_ANSWERED_ELSEWHERE while local channels and queues used AST_FLAG_ANSWERED_ELSEWHERE. This removes the flag and converts that usage into AST_CAUSE_ANSWERED_ELSEWHER usage. Review: https://reviewboard.asterisk.org/r/1944 (closes issue ASTERISK-19865) Patch-by: Birger Harzenetter git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@368519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main')
-rw-r--r--main/channel_internal_api.c1
-rw-r--r--main/features.c4
2 files changed, 2 insertions, 3 deletions
diff --git a/main/channel_internal_api.c b/main/channel_internal_api.c
index 3fc3277d0..e39ee5dfd 100644
--- a/main/channel_internal_api.c
+++ b/main/channel_internal_api.c
@@ -250,7 +250,6 @@ static void channel_data_add_flags(struct ast_data *tree,
ast_data_add_bool(tree, "IN_DTMF", ast_test_flag(ast_channel_flags(chan), AST_FLAG_IN_DTMF));
ast_data_add_bool(tree, "EMULATE_DTMF", ast_test_flag(ast_channel_flags(chan), AST_FLAG_EMULATE_DTMF));
ast_data_add_bool(tree, "END_DTMF_ONLY", ast_test_flag(ast_channel_flags(chan), AST_FLAG_END_DTMF_ONLY));
- ast_data_add_bool(tree, "ANSWERED_ELSEWHERE", ast_test_flag(ast_channel_flags(chan), AST_FLAG_ANSWERED_ELSEWHERE));
ast_data_add_bool(tree, "MASQ_NOSTREAM", ast_test_flag(ast_channel_flags(chan), AST_FLAG_MASQ_NOSTREAM));
ast_data_add_bool(tree, "BRIDGE_HANGUP_RUN", ast_test_flag(ast_channel_flags(chan), AST_FLAG_BRIDGE_HANGUP_RUN));
ast_data_add_bool(tree, "BRIDGE_HANGUP_DONT", ast_test_flag(ast_channel_flags(chan), AST_FLAG_BRIDGE_HANGUP_DONT));
diff --git a/main/features.c b/main/features.c
index 04bc5326a..21d6edca2 100644
--- a/main/features.c
+++ b/main/features.c
@@ -7690,8 +7690,8 @@ int ast_do_pickup(struct ast_channel *chan, struct ast_channel *target)
ast_channel_queue_connected_line_update(chan, &connected_caller, NULL);
- /* setting this flag to generate a reason header in the cancel message to the ringing channel */
- ast_set_flag(ast_channel_flags(chan), AST_FLAG_ANSWERED_ELSEWHERE);
+ /* setting the HANGUPCAUSE so the ringing channel knows this call was not a missed call */
+ ast_channel_hangupcause_set(chan, AST_CAUSE_ANSWERED_ELSEWHERE);
if (ast_channel_masquerade(target, chan)) {
ast_log(LOG_WARNING, "Unable to masquerade '%s' into '%s'\n", chan_name,