summaryrefslogtreecommitdiff
path: root/formats/format_sln.c
diff options
context:
space:
mode:
authorJenkins2 <jenkins2@gerrit.asterisk.org>2018-04-30 08:33:09 -0500
committerGerrit Code Review <gerrit2@gerrit.digium.api>2018-04-30 08:33:09 -0500
commit8e368d0eaf4012300b2fed4c5e1b472194505cbe (patch)
tree932e65289bdc385a22bc520b878b4aa1773be2d5 /formats/format_sln.c
parent5dd6fe478c187df7b2b5c6d7568511a2ff58a778 (diff)
parentff652711c7eaf6e78fd7b201099de90558d79a9d (diff)
Merge "translate: generic plc not filled in after translation"
Diffstat (limited to 'formats/format_sln.c')
-rw-r--r--formats/format_sln.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/formats/format_sln.c b/formats/format_sln.c
index 6ad8c386e..80d348400 100644
--- a/formats/format_sln.c
+++ b/formats/format_sln.c
@@ -54,6 +54,12 @@ static struct ast_frame *generic_read(struct ast_filestream *s, int *whennext, u
static int slinear_write(struct ast_filestream *fs, struct ast_frame *f)
{
int res;
+
+ /* Don't try to write an interpolated frame */
+ if (f->datalen == 0) {
+ return 0;
+ }
+
if ((res = fwrite(f->data.ptr, 1, f->datalen, fs->f)) != f->datalen) {
ast_log(LOG_WARNING, "Bad write (%d/%d): %s\n", res, f->datalen, strerror(errno));
return -1;