Merged revisions 114597 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Wed, 23 Apr 2008 20:53:05 +0000 (20:53 +0000)
committerRussell Bryant <russell@russellbryant.com>
Wed, 23 Apr 2008 20:53:05 +0000 (20:53 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114597 | russell | 2008-04-23 15:49:18 -0500 (Wed, 23 Apr 2008) | 10 lines

Fix an issue that caused getting the correct next channel to not always work.
Also, remove setting the amount of time to wait for a digit from 5 seconds back
down to 1/10 of a second.  I believe this was so the beep didn't get played over
and over really fast, but a while back I put in another fix for that issue.

(closes issue #12498)
Reported by: jsmith
Patches:
      app_chanspy_channel_walk.trunk.patch uploaded by jsmith (license 15)

........

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

apps/app_chanspy.c

index 834f681..641e32e 100644 (file)
@@ -705,12 +705,11 @@ static int common_exec(struct ast_channel *chan, const struct ast_flags *flags,
 
                        for (s = peer_name; s < ptr; s++)
                                *s = tolower(*s);
-               
                        /* We have to unlock the peer channel here to avoid a deadlock.
-                        * So, when we need it again, we have to lock the datastore and get
-                        * the pointer from there to see if the channel is still valid. */
+                        * So, when we need to dereference it again, we have to lock the 
+                        * datastore and get the pointer from there to see if the channel 
+                        * is still valid. */
                        ast_channel_unlock(peer);
-                       peer = NULL;
 
                        if (!ast_test_flag(flags, OPTION_QUIET)) {
                                if (!ast_test_flag(flags, OPTION_NOTECH)) {
@@ -731,7 +730,6 @@ static int common_exec(struct ast_channel *chan, const struct ast_flags *flags,
                                        ast_say_digits(chan, atoi(ptr), "", chan->language);
                        }
 
-                       waitms = 5000;
                        res = channel_spy(chan, peer_chanspy_ds, &volfactor, fd, flags, exitcontext);
                        num_spyed_upon++;