Merged revisions 316650 via svnmerge from
authorDavid Vossel <dvossel@digium.com>
Wed, 4 May 2011 14:26:33 +0000 (14:26 +0000)
committerDavid Vossel <dvossel@digium.com>
Wed, 4 May 2011 14:26:33 +0000 (14:26 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r316650 | dvossel | 2011-05-04 09:25:03 -0500 (Wed, 04 May 2011) | 15 lines

  Merged revisions 316644 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2

  ........
    r316644 | dvossel | 2011-05-04 09:23:39 -0500 (Wed, 04 May 2011) | 9 lines

    Fixes one-way-audio when chanspy activated with the 'o' option

    (closes issue #18382)
    Reported by: jkister
    Patches:
          0001-Bugfix-18382-one-way-audio-when-chanspy-activated.patch.txt uploaded by malin (license )
    Tested by: firstsip, Greenlightcrm, malin, wdoekes, boroda, dvossel
  ........
................

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

apps/app_chanspy.c

index 994a03a..c90a790 100644 (file)
@@ -404,6 +404,7 @@ struct chanspy_translation_helper {
        struct ast_audiohook bridge_whisper_audiohook;
        int fd;
        int volfactor;
+       struct ast_flags flags;
 };
 
 struct spy_dtmf_options {
@@ -438,7 +439,7 @@ static int spy_generate(struct ast_channel *chan, void *data, int len, int sampl
                return -1;
        }
 
-       if (ast_test_flag(&csth->spy_audiohook, OPTION_READONLY)) {
+       if (ast_test_flag(&csth->flags, OPTION_READONLY)) {
                /* Option 'o' was set, so don't mix channel audio */
                f = ast_audiohook_read_frame(&csth->spy_audiohook, samples, AST_AUDIOHOOK_DIRECTION_READ, &format_slin);
        } else {
@@ -539,7 +540,7 @@ static int channel_spy(struct ast_channel *chan, struct ast_autochan *spyee_auto
                        spyer_name, name);
 
        memset(&csth, 0, sizeof(csth));
-       ast_copy_flags(&csth.spy_audiohook, flags, AST_FLAGS_ALL);
+       ast_copy_flags(&csth.flags, flags, AST_FLAGS_ALL);
 
        ast_audiohook_init(&csth.spy_audiohook, AST_AUDIOHOOK_TYPE_SPY, "ChanSpy", 0);