]> git.ipfire.org Git - thirdparty/asterisk.git/commit
Merged revisions 238635 via svnmerge from
authorDavid Vossel <dvossel@digium.com>
Fri, 8 Jan 2010 19:44:54 +0000 (19:44 +0000)
committerDavid Vossel <dvossel@digium.com>
Fri, 8 Jan 2010 19:44:54 +0000 (19:44 +0000)
commitfc530550ddc35633479bed5129984bc95db96825
tree32191a0e6344dca595f261ce8c0592161df4f4b5
parent78a28e14377405877eafcf10968620fbeab9da43
Merged revisions 238635 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r238635 | dvossel | 2010-01-08 13:39:30 -0600 (Fri, 08 Jan 2010) | 22 lines

  fixes AUDIOHOOK_INHERIT regression

  During the process of removing an audiohook from one channel
  and attaching it to another the audiohook's status is updated
  to DONE and then back to whatever it was previously.  Typically
  updating the status after setting it to DONE is not a good idea
  because DONE can trigger unrecoverable audiohook destruction
  events... because of this a conditional check was added to
  audiohook_update_status to explicitly prevent the audiohook
  from ever changing after being set to DONE.  It was this check
  that prevented audiohook inherit from work properly though.

  Now ast_audiohook_move_by_source is treated as a special exception,
  as the audiohook must be returned to its previous status after
  attaching it to the new channel.  This is only a safe operation
  because the audiohook's lock is held the entire time, otherwise
  this could cause trouble.

  (closes issue #16522)
  Reported by: corruptor
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@238639 65c4cc65-6c06-0410-ace0-fbb531ad65f3
include/asterisk/audiohook.h
main/audiohook.c