summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2005-01-28 05:19:06 +0000
committerMark Spencer <markster@digium.com>2005-01-28 05:19:06 +0000
commit1be3670efee05addeea30b61d2b2805fee31c78d (patch)
tree9f2c21fe68854ddbe8fca7d93c89a753e357e3b2 /channels
parentb1e0f0f10215df101cd2076014c8857d8efd7960 (diff)
Fix interation of # transfer and flash hook transfer (bug #3011)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4907 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-xchannels/chan_zap.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index 0129987b9..a5a2c5fc5 100755
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -2606,6 +2606,7 @@ static int zt_bridge(struct ast_channel *c0, struct ast_channel *c1, int flags,
if (flags & (AST_BRIDGE_DTMF_CHANNEL_0 | AST_BRIDGE_DTMF_CHANNEL_1))
return -2;
+
ast_mutex_lock(&c0->lock);
ast_mutex_lock(&c1->lock);
@@ -4256,6 +4257,11 @@ static int zt_write(struct ast_channel *ast, struct ast_frame *frame)
ast_log(LOG_DEBUG, "Dropping frame since I'm still dialing on %s...\n",ast->name);
return 0;
}
+ if (!p->owner) {
+ if (option_debug)
+ ast_log(LOG_DEBUG, "Dropping frame since there is no active owner on %s...\n",ast->name);
+ return 0;
+ }
if (p->cidspill) {
if (option_debug)
ast_log(LOG_DEBUG, "Dropping frame since I've still got a callerid spill\n");