Merged revisions 104106 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Mon, 25 Feb 2008 23:48:16 +0000 (23:48 +0000)
committerRussell Bryant <russell@russellbryant.com>
Mon, 25 Feb 2008 23:48:16 +0000 (23:48 +0000)
commit6554a7bf3a4e89ffc01c48f2ea27fecf91b6820a
treece5e2588b29fee494b1b5b942c824aff22c2d191
parent16b84e260c2d9d8e35fd4e88df7ed88e271c402d
Merged revisions 104106 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r104106 | russell | 2008-02-25 17:42:42 -0600 (Mon, 25 Feb 2008) | 10 lines

This patch fixes some pretty significant problems with how app_chanspy handles
pointers to channels that are being spied upon.  It was very likely that a
crash would occur if the channel being spied upon hung up.  This was because
the current ast_channel handling _requires_ that the object is locked or else
it could disappear at any time (except in the owning channel thread).  So, this
patch uses some channel datastore magic on the spied upon channel to be able to
detect if and when the channel goes away.
(closes issue #11877)
(patch written by me, but thanks to kpfleming for the idea, and to file for review)

........

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