mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Merged revisions 297733 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8 ................ r297733 | tilghman | 2010-12-06 18:29:26 -0600 (Mon, 06 Dec 2010) | 22 lines Merged revisions 297713 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.6.2 ................ r297713 | tilghman | 2010-12-06 18:21:50 -0600 (Mon, 06 Dec 2010) | 15 lines Merged revisions 297689 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r297689 | tilghman | 2010-12-06 18:07:37 -0600 (Mon, 06 Dec 2010) | 8 lines Don't create a Local channel if the target extension does not exist. (closes issue #18126) Reported by: junky Patches: followme.diff uploaded by junky (license 177) (partially restructured by me to avoid a possible memory leak) ........ ................ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@297734 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -811,7 +811,6 @@ static void findmeexec(struct fm_args *tpargs)
|
||||
break;
|
||||
|
||||
while (nm) {
|
||||
|
||||
ast_debug(2, "Number %s timeout %ld\n", nm->number,nm->timeout);
|
||||
|
||||
number = ast_strdupa(nm->number);
|
||||
@@ -823,6 +822,14 @@ static void findmeexec(struct fm_args *tpargs)
|
||||
rest++;
|
||||
}
|
||||
|
||||
/* We check if that context exists, before creating the ast_channel struct needed */
|
||||
if (!ast_exists_extension(caller, tpargs->context, number, 1, S_COR(caller->caller.id.number.valid, caller->caller.id.number.str, NULL))) {
|
||||
/* XXX Should probably restructure to simply skip this item, instead of returning. XXX */
|
||||
ast_log(LOG_ERROR, "Extension '%s@%s' doesn't exist\n", number, tpargs->context);
|
||||
free(findme_user_list);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!strcmp(tpargs->context, ""))
|
||||
snprintf(dialarg, sizeof(dialarg), "%s", number);
|
||||
else
|
||||
@@ -830,7 +837,6 @@ static void findmeexec(struct fm_args *tpargs)
|
||||
|
||||
tmpuser = ast_calloc(1, sizeof(*tmpuser));
|
||||
if (!tmpuser) {
|
||||
ast_log(LOG_WARNING, "Out of memory!\n");
|
||||
ast_free(findme_user_list);
|
||||
return;
|
||||
}
|
||||
|
Reference in New Issue
Block a user