summaryrefslogtreecommitdiff
path: root/pbx/pbx_dundi.c
diff options
context:
space:
mode:
authorRussell Bryant <russell@russellbryant.com>2006-11-04 21:54:37 +0000
committerRussell Bryant <russell@russellbryant.com>2006-11-04 21:54:37 +0000
commit121bd75fcc615fe303909e35790b9a4c2aa80476 (patch)
treef7117e69a832271828b9a5e8307444165d01d8c7 /pbx/pbx_dundi.c
parent80293c2ed8b5f8c0b9155998a4e82653d229fead (diff)
simplify a couple of loops
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47206 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'pbx/pbx_dundi.c')
-rw-r--r--pbx/pbx_dundi.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/pbx/pbx_dundi.c b/pbx/pbx_dundi.c
index 798beca16..c3a98ef01 100644
--- a/pbx/pbx_dundi.c
+++ b/pbx/pbx_dundi.c
@@ -3610,19 +3610,16 @@ static void dundi_precache_full(void)
AST_LIST_TRAVERSE(&mappings, cur, list) {
ast_log(LOG_NOTICE, "Should precache context '%s'\n", cur->dcontext);
ast_lock_contexts();
- con = ast_walk_contexts(NULL);
- while (con) {
- if (!strcasecmp(cur->lcontext, ast_get_context_name(con))) {
- /* Found the match, now queue them all up */
- ast_lock_context(con);
- e = ast_walk_context_extensions(con, NULL);
- while (e) {
- reschedule_precache(ast_get_extension_name(e), cur->dcontext, 0);
- e = ast_walk_context_extensions(con, e);
- }
- ast_unlock_context(con);
- }
- con = ast_walk_contexts(con);
+ con = NULL;
+ while ((con = ast_walk_contexts(con))) {
+ if (strcasecmp(cur->lcontext, ast_get_context_name(con)))
+ continue;
+ /* Found the match, now queue them all up */
+ ast_lock_context(con);
+ e = NULL;
+ while ((e = ast_walk_context_extensions(con, e)))
+ reschedule_precache(ast_get_extension_name(e), cur->dcontext, 0);
+ ast_unlock_context(con);
}
ast_unlock_contexts();
}