From: Automerge Script Date: Fri, 23 Feb 2007 00:21:13 +0000 (+0000) Subject: automerge commit X-Git-Tag: 1.2.16-netsec~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2954de75bb8abc6b277507616c6b86ad4608fbb6;p=thirdparty%2Fasterisk.git automerge commit git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2-netsec@56322 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_agent.c b/channels/chan_agent.c index 964413281b..2c84b8f105 100644 --- a/channels/chan_agent.c +++ b/channels/chan_agent.c @@ -1480,15 +1480,13 @@ static int agent_logoff(char *agent, int soft) for (p=agents; p; p=p->next) { if (!strcasecmp(p->agent, agent)) { + if (p->owner || p->chan) + defer = 1; if (!soft) { - if (p->owner) { - defer = 1; + if (p->owner) ast_softhangup(p->owner, AST_SOFTHANGUP_EXPLICIT); - } - if (p->chan) { - defer = 1; + if (p->chan) ast_softhangup(p->chan, AST_SOFTHANGUP_EXPLICIT); - } } ret = 0; /* found an agent => return 0 */ logintime = time(NULL) - p->loginstart;