From: Joshua Colp Date: Mon, 20 Nov 2006 19:51:36 +0000 (+0000) Subject: Merged revisions 47859 via svnmerge from X-Git-Tag: 1.4.0-beta4~84 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0e684abd82fa5d3958e4fe4da348c287e7e7eb44;p=thirdparty%2Fasterisk.git Merged revisions 47859 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r47859 | file | 2006-11-20 14:50:21 -0500 (Mon, 20 Nov 2006) | 2 lines Don't forget to byte swap if we are exiting the smoother feed early. (issue #8287 reported by arturs) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@47860 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/frame.c b/main/frame.c index 5fc723d66d..beb141d523 100644 --- a/main/frame.c +++ b/main/frame.c @@ -188,6 +188,8 @@ int __ast_smoother_feed(struct ast_smoother *s, struct ast_frame *f, int swap) /* Optimize by sending the frame we just got on the next read, thus eliminating the douple copy */ + if (swap) + ast_swapcopy_samples(f->data, f->data, f->samples); s->opt = f; return 0; } else { @@ -198,6 +200,8 @@ int __ast_smoother_feed(struct ast_smoother *s, struct ast_frame *f, int swap) we were unable to optimize because there was still some cruft left over. Lets just drop the cruft so we can move to a fully optimized path */ + if (swap) + ast_swapcopy_samples(f->data, f->data, f->samples); s->len = 0; s->opt = f; return 0;