diff --git a/app.c b/app.c index bb21be9e899425f2e87879be5ee9e18c26724457..5e5230e963a1b7fd94d932da177048ac850e4fc5 100755 --- a/app.c +++ b/app.c @@ -1059,7 +1059,6 @@ int ast_app_group_match_get_count(char *groupmatch, char *category) if (test && !regexec(®exbuf, test, 0, NULL, 0)) count++; ast_mutex_unlock(&chan->lock); - chan = ast_channel_walk_locked(chan); } regfree(®exbuf); diff --git a/manager.c b/manager.c index c006586950a6ab82af1483322c29faae1b4ebe7a..4f968cd1978e3f7789dfcc16bb71e1f12a114851 100755 --- a/manager.c +++ b/manager.c @@ -753,6 +753,7 @@ static int action_status(struct mansession *s, struct message *m) ast_state2str(c->_state), bridge, c->uniqueid, idText); } ast_mutex_unlock(&s->lock); + ast_mutex_unlock(&c->lock); if (!all) break; c = ast_channel_walk_locked(c);