mpg123 (1.12.1-3) src/libmpg123/readers.c

Summary

 src/libmpg123/readers.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

    
download this patch

Patch contents

--- mpg123-1.12.1.orig/src/libmpg123/readers.c
+++ mpg123-1.12.1/src/libmpg123/readers.c
@@ -120,7 +120,7 @@
 			if(fr->icy.next > 0)
 			{
 				cut_pos = fr->icy.next;
-				ret = fr->rdat.fdread(fr,buf,cut_pos);
+				ret = fr->rdat.fdread(fr,buf+cnt,cut_pos);
 				if(ret < 1)
 				{
 					if(ret == 0) break; /* Just EOF. */
@@ -128,7 +128,8 @@
 
 					return READER_ERROR;
 				}
-				fr->rdat.filepos += ret;
+
+				if(!(fr->rdat.flags & READER_BUFFERED)) fr->rdat.filepos += ret;
 				cnt += ret;
 				fr->icy.next -= ret;
 				if(fr->icy.next > 0)