mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-08 19:08:14 +00:00
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.2@47859 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
4
frame.c
4
frame.c
@@ -157,6 +157,8 @@ int __ast_smoother_feed(struct ast_smoother *s, struct ast_frame *f, int swap)
|
|||||||
/* Optimize by sending the frame we just got
|
/* Optimize by sending the frame we just got
|
||||||
on the next read, thus eliminating the douple
|
on the next read, thus eliminating the douple
|
||||||
copy */
|
copy */
|
||||||
|
if (swap)
|
||||||
|
ast_swapcopy_samples(f->data, f->data, f->samples);
|
||||||
s->opt = f;
|
s->opt = f;
|
||||||
return 0;
|
return 0;
|
||||||
} else {
|
} else {
|
||||||
@@ -167,6 +169,8 @@ int __ast_smoother_feed(struct ast_smoother *s, struct ast_frame *f, int swap)
|
|||||||
we were unable to optimize because there was still
|
we were unable to optimize because there was still
|
||||||
some cruft left over. Lets just drop the cruft so
|
some cruft left over. Lets just drop the cruft so
|
||||||
we can move to a fully optimized path */
|
we can move to a fully optimized path */
|
||||||
|
if (swap)
|
||||||
|
ast_swapcopy_samples(f->data, f->data, f->samples);
|
||||||
s->len = 0;
|
s->len = 0;
|
||||||
s->opt = f;
|
s->opt = f;
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user