dect
/
asterisk
Archived
13
0
Fork 0

simplify a couple of loops

git-svn-id: http://svn.digium.com/svn/asterisk/trunk@47206 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
russell 2006-11-04 21:54:37 +00:00
parent 892aaef06c
commit bb3e3ea3a5
1 changed files with 10 additions and 13 deletions

View File

@ -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();
}