Archived
14
0
Fork 0

Merged revisions 91677 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r91677 | russell | 2007-12-06 20:38:40 -0600 (Thu, 06 Dec 2007) | 4 lines

Allow dialing local channels from Queue() and Dial() again.  There was a slight
flaw in the code to prevent call forwards from looping that caused this problem.
(related to issue #11486)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@91678 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
russell 2007-12-07 02:43:21 +00:00
parent 8accb5e1d0
commit 7f34a61cec
2 changed files with 3 additions and 4 deletions

View file

@ -1390,7 +1390,7 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags
} }
strcpy(di->interface, interface); strcpy(di->interface, interface);
AST_LIST_INSERT_TAIL(dialed_interfaces, di, list); AST_LIST_INSERT_TAIL(dialed_interfaces, di, list);
} else { } else if (dialed) {
AST_LIST_UNLOCK(dialed_interfaces); AST_LIST_UNLOCK(dialed_interfaces);
ast_log(LOG_WARNING, "Skipping dialing interface '%s' again since it has already been dialed\n", di->interface); ast_log(LOG_WARNING, "Skipping dialing interface '%s' again since it has already been dialed\n", di->interface);
fulldial++; fulldial++;

View file

@ -2851,9 +2851,8 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
} }
strcpy(di->interface, cur->interface); strcpy(di->interface, cur->interface);
AST_LIST_INSERT_TAIL(dialed_interfaces, di, list); AST_LIST_INSERT_TAIL(dialed_interfaces, di, list);
} else { } else if (dialed) {
if (di) ast_log(LOG_DEBUG, "Skipping dialing interface '%s' since it has already been dialed\n", di->interface);
ast_log(LOG_DEBUG, "Skipping dialing interface '%s' since it has already been dialed\n", di->interface);
AST_LIST_UNLOCK(dialed_interfaces); AST_LIST_UNLOCK(dialed_interfaces);
free(tmp); free(tmp);
continue; continue;