Fixed another little bug.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4795 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Jim Dixon 2005-01-15 00:53:17 +00:00
parent 924bc59162
commit 99e2b961c2
1 changed files with 17 additions and 3 deletions

View File

@ -3,7 +3,7 @@
* Asterisk -- A telephony toolkit for Linux.
*
* Radio Repeater / Remote Base program
* version 0.19 01/14/05
* version 0.20 01/14/05
*
* See http://www.zapatatelephony.org/app_rpt.html
*
@ -150,7 +150,7 @@ enum {DLY_TELEM, DLY_ID, DLY_UNKEY, DLY_CALLTERM};
#include <tonezone.h>
#include <linux/zaptel.h>
static char *tdesc = "Radio Repeater / Remote Base version 0.19 01/14/2005";
static char *tdesc = "Radio Repeater / Remote Base version 0.20 01/14/2005";
static char *app = "Rpt";
static char *synopsis = "Radio Repeater/Remote Base Control System";
@ -4082,7 +4082,21 @@ static int rpt_exec(struct ast_channel *chan, void *data)
/* if found */
if (l != &myrpt->links)
{
if (l->chan) ast_softhangup(l->chan,AST_SOFTHANGUP_DEV);
l->disctime = DISC_TIME;
if (l->chan)
{
ast_softhangup(l->chan,AST_SOFTHANGUP_DEV);
l->chan = 0;
}
else
{
remque((struct qelem *) l);
if (!strcmp(myrpt->cmdnode,l->name))
myrpt->cmdnode[0] = 0;
ast_hangup(l->pchan);
free(l);
}
ast_mutex_unlock(&myrpt->lock);
usleep(500000);
} else
ast_mutex_unlock(&myrpt->lock);