Merged revisions 114537 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Tue, 22 Apr 2008 18:04:39 +0000 (18:04 +0000)
committerRussell Bryant <russell@russellbryant.com>
Tue, 22 Apr 2008 18:04:39 +0000 (18:04 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114537 | russell | 2008-04-22 13:03:33 -0500 (Tue, 22 Apr 2008) | 9 lines

If the dial string passed to the call channel callback does not indicate an
extension, then consider the extension on the channel before falling back
to the default.

(closes issue #12479)
Reported by: darren1713
Patches:
      exten_dial_fix_chan_iax2.c.patch uploaded by darren1713 (license 116)

........

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

channels/chan_iax2.c

index c11fa1c..8f41f69 100644 (file)
@@ -3397,8 +3397,12 @@ static int iax2_call(struct ast_channel *c, char *dest, int timeout)
                return -1;
        }
 
-       if (!pds.exten)
-               pds.exten = defaultrdest;
+       if (!pds.exten) {
+               if (!ast_strlen_zero(c->exten))
+                       pds.exten = c->exten;
+               else
+                       pds.exten = defaultrdest;
+       }
 
        if (create_addr(pds.peer, c, &sin, &cai)) {
                ast_log(LOG_WARNING, "No address associated with '%s'\n", pds.peer);