Fix audio problems with format_mp3.
authorRussell Bryant <russell@russellbryant.com>
Tue, 8 Sep 2009 18:06:57 +0000 (18:06 +0000)
committerRussell Bryant <russell@russellbryant.com>
Tue, 8 Sep 2009 18:06:57 +0000 (18:06 +0000)
This problem was introduced when the AST_FRIENDLY_OFFSET patch was merged.
I'm surprised that nobody noticed any trouble when testing that patch, but this
fixes the code that fills in the buffer to start filling in after the offset
portion of the buffer.

(closes issue #15850)
Reported by: 99gixxer
Patches:
      issue15850.diff1.txt uploaded by russell (license 2)
Tested by: 99gixxer

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

addons/format_mp3.c

index ae6c1a6..81d2a0d 100644 (file)
@@ -200,7 +200,7 @@ static struct ast_frame *mp3_read(struct ast_filestream *s, int *whennext)
 
        if(p->dbuflen) {
                for(p->buflen=0; p->buflen < MP3_BUFLEN && p->buflen < p->dbuflen; p->buflen++) {
-                       s->buf[p->buflen] = p->dbuf[p->buflen+p->dbufoffset];
+                       s->buf[p->buflen + AST_FRIENDLY_OFFSET] = p->dbuf[p->buflen+p->dbufoffset];
                        p->sbufoffset++;
                }
                p->dbufoffset += p->buflen;
@@ -211,7 +211,7 @@ static struct ast_frame *mp3_read(struct ast_filestream *s, int *whennext)
                                return NULL;
 
                        for(save = p->buflen; p->buflen < MP3_BUFLEN; p->buflen++) {
-                               s->buf[p->buflen] = p->dbuf[(p->buflen-save)+p->dbufoffset];
+                               s->buf[p->buflen + AST_FRIENDLY_OFFSET] = p->dbuf[(p->buflen-save)+p->dbufoffset];
                                p->sbufoffset++;
                        }
                        p->dbufoffset += (MP3_BUFLEN - save);