diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-09-10 15:11:38 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-09-10 15:11:38 +0000 |
commit | 2b772ac9646c71e87a787047a311c7e5b61a2d07 (patch) | |
tree | ba1d864f82199845aab6a2f174aa6d3b8d844ac7 /channels | |
parent | d1fab10737f98b505b68db7849a15206c6390539 (diff) |
Properly lock management stuff (bug #2406)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3759 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rwxr-xr-x | channels/chan_zap.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c index d6749540c..e17af276a 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -8511,7 +8511,7 @@ static int action_zapshowchannels(struct mansession *s, struct message *m) while (tmp) { if (tmp->channel > 0) { int alarm = get_alarms(tmp); - + ast_mutex_lock(&s->lock); ast_cli(s->fd, "Event: ZapShowChannels\r\n" "Channel: %d\r\n" @@ -8522,6 +8522,7 @@ static int action_zapshowchannels(struct mansession *s, struct message *m) "\r\n", tmp->channel, sig2str(tmp->sig), tmp->context, alarm2str(alarm), idText); + ast_mutex_unlock(&s->lock); } tmp = tmp->next; @@ -8529,12 +8530,13 @@ static int action_zapshowchannels(struct mansession *s, struct message *m) ast_mutex_unlock(&iflock); + ast_mutex_lock(&s->lock); ast_cli(s->fd, "Event: ZapShowChannelsComplete\r\n" "%s" "\r\n", idText); - + ast_mutex_unlock(&s->lock); return 0; } |