]> git.ipfire.org Git - thirdparty/asterisk.git/commit
Merged revisions 315643 via svnmerge from
authorTerry Wilson <twilson@digium.com>
Tue, 26 Apr 2011 21:39:01 +0000 (21:39 +0000)
committerTerry Wilson <twilson@digium.com>
Tue, 26 Apr 2011 21:39:01 +0000 (21:39 +0000)
commit734ca12381dd59e3557944dd2125254e4e82b657
tree53cf63537cb629df6fcfaca4b2256e07491079c7
parent016370cc5c59daf8e81bb762dc9568940cdf2bc8
Merged revisions 315643 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r315643 | twilson | 2011-04-26 14:27:44 -0700 (Tue, 26 Apr 2011) | 25 lines

  Merged revisions 315596 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.4

  ........
    r315596 | twilson | 2011-04-26 14:16:10 -0700 (Tue, 26 Apr 2011) | 18 lines

    Allow transfer loops without allowing forwarding loops

    We try to avoid the situation where two phones may be forwarded to each other
    causing an infinite loop by storing each dialed interface in a channel
    datastore and checking the list before dialing out. This works, but currently
    breaks situations like A calls B, A transfers B to C, B transfers C to A, and A
    transfers C to B. Since human interaction is happening here and not an
    automated forwarding loop, it should be allowed.

    This patch removes the dialed_interfaces datastore when a call is bridged (a
    suggestion from the brilliant mmichelson). If a call is being bridged, it
    should be safe to assume that we aren't stuck in a loop.

    Since we are now handling this is the bridge code, the previous attempts at
    handling it in app_dial and app_queue are removed.

    Review: https://reviewboard.asterisk.org/r/1195/
  ........
................

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@315644 65c4cc65-6c06-0410-ace0-fbb531ad65f3
apps/app_dial.c
apps/app_queue.c
main/features.c