diff options
Diffstat (limited to 'apps/app_chanspy.c')
-rw-r--r-- | apps/app_chanspy.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/apps/app_chanspy.c b/apps/app_chanspy.c index 3f19b04af..18e4972a5 100644 --- a/apps/app_chanspy.c +++ b/apps/app_chanspy.c @@ -171,7 +171,7 @@ static void spy_release(struct ast_channel *chan, void *data) static int spy_generate(struct ast_channel *chan, void *data, int len, int samples) { struct chanspy_translation_helper *csth = data; - struct ast_frame *f, *cur; + struct ast_frame *f; ast_audiohook_lock(&csth->spy_audiohook); if (csth->spy_audiohook.status != AST_AUDIOHOOK_STATUS_RUNNING) { @@ -186,16 +186,14 @@ static int spy_generate(struct ast_channel *chan, void *data, int len, int sampl if (!f) return 0; - for (cur = f; cur; cur = AST_LIST_NEXT(cur, frame_list)) { - if (ast_write(chan, cur)) { - ast_frfree(f); - return -1; - } + if (ast_write(chan, f)) { + ast_frfree(f); + return -1; + } - if (csth->fd) { - if (write(csth->fd, cur->data, cur->datalen) < 0) { - ast_log(LOG_WARNING, "write() failed: %s\n", strerror(errno)); - } + if (csth->fd) { + if (write(csth->fd, f->data, f->datalen) < 0) { + ast_log(LOG_WARNING, "write() failed: %s\n", strerror(errno)); } } |