Index: app.c =================================================================== RCS file: /usr/cvsroot/asterisk/app.c,v retrieving revision 1.67 diff -a -u -r1.67 app.c --- app.c 6 Jun 2005 22:12:18 -0000 1.67 +++ app.c 9 Jun 2005 14:34:57 -0000 @@ -1059,7 +1059,6 @@ if (test && !regexec(®exbuf, test, 0, NULL, 0)) count++; ast_mutex_unlock(&chan->lock); - chan = ast_channel_walk_locked(chan); } regfree(®exbuf); Index: manager.c =================================================================== RCS file: /usr/cvsroot/asterisk/manager.c,v retrieving revision 1.100 diff -a -u -r1.100 manager.c --- manager.c 6 Jun 2005 22:12:18 -0000 1.100 +++ manager.c 9 Jun 2005 14:34:57 -0000 @@ -753,6 +753,7 @@ 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);