Merged revisions 196116 via svnmerge from
authorJoshua Colp <jcolp@digium.com>
Fri, 22 May 2009 13:56:47 +0000 (13:56 +0000)
committerJoshua Colp <jcolp@digium.com>
Fri, 22 May 2009 13:56:47 +0000 (13:56 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r196116 | file | 2009-05-22 10:54:17 -0300 (Fri, 22 May 2009) | 5 lines

  Fix a bug where using immediate with mISDN caused a cause code of 16 to get sent back instead of 1 if the 's' extension did not exist.

  (closes issue #12286)
  Reported by: lmamane
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196117 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_misdn.c

index d757984..18dd44c 100644 (file)
@@ -8171,8 +8171,9 @@ static void do_immediate_setup(struct misdn_bchannel *bc, struct chan_list *ch,
 
        strcpy(ast->exten, "s");
 
-       if (pbx_start_chan(ch) < 0) {
+       if (!ast_canmatch_extension(ast, ast->context, ast->exten, 1, bc->oad) || pbx_start_chan(ch) < 0) {
                ast = NULL;
+               bc->out_cause = AST_CAUSE_UNALLOCATED;
                hangup_chan(ch);
                hanguptone_indicate(ch);