1
0
Fork 0
forked from len0rd/rockbox

Slightly more correct saving when recording

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2845 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Linus Nielsen Feltzing 2002-11-13 23:22:40 +00:00
parent 1f214f2732
commit 1521a1c38a

View file

@ -1036,6 +1036,7 @@ static void mpeg_thread(void)
int start_offset;
#ifdef HAVE_MAS3587F
int amount_to_save;
int writelen;
#endif
is_playing = false;
@ -1622,9 +1623,9 @@ static void mpeg_thread(void)
wrapped */
if(amount_to_save < 0)
{
amount_to_save = mp3buflen - mp3buf_read;
amount_to_save += mp3buflen;
}
/* Save data only if the buffer is getting full,
or if we should stop recording */
if(amount_to_save)
@ -1632,8 +1633,12 @@ static void mpeg_thread(void)
if(mp3buflen - amount_to_save < MPEG_LOW_WATER ||
stop_pending)
{
/* Only save up to the end of the buffer */
writelen = MIN(amount_to_save,
mp3buflen - mp3buf_read);
write(mpeg_file, mp3buf + mp3buf_read,
amount_to_save);
writelen);
mp3buf_read += amount_to_save;
if(mp3buf_read >= mp3buflen)