summaryrefslogtreecommitdiff
path: root/apps/app_zapscan.c
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2004-06-21 04:08:54 +0000
committerMark Spencer <markster@digium.com>2004-06-21 04:08:54 +0000
commitbbe5ff18c22e012d26d0ac78638a82324a26435f (patch)
tree24ff168c12801bb42f7fd7bf49b151cb37e34019 /apps/app_zapscan.c
parentef4d9eb5b747bfbd6b592bd537c1a528af114e3c (diff)
Fix locking in zapscan
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3251 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_zapscan.c')
-rwxr-xr-xapps/app_zapscan.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/apps/app_zapscan.c b/apps/app_zapscan.c
index f449c7f36..dab62711d 100755
--- a/apps/app_zapscan.c
+++ b/apps/app_zapscan.c
@@ -72,10 +72,7 @@ static struct ast_channel *get_zap_channel_locked(int num) {
ast_mutex_unlock(&c->lock);
c = ast_channel_walk_locked(c);
}
- if (c)
- return c;
-
- return NULL;
+ return c;
}
static int careful_write(int fd, unsigned char *data, int len)
@@ -334,7 +331,8 @@ static int conf_exec(struct ast_channel *chan, void *data)
res = conf_run(chan, confno, confflags);
if (res<0) break;
input = res;
- }
+ } else if (tempchan)
+ ast_mutex_unlock(&tempchan->lock);
lastchan = tempchan;
}
LOCAL_USER_REMOVE(u);