summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndree Buschmann <AndreeBuschmann@t-online.de>2010-11-01 20:43:17 +0000
committerAndree Buschmann <AndreeBuschmann@t-online.de>2010-11-01 20:43:17 +0000
commit5245c9254ae3d62ffd187ed66d443b1e58724b1e (patch)
treefca52cb6ea2f79814906926290ba92b85ea3b5b7
parent029eb885adfc41bcb48f10bd68adcc83e9ffd719 (diff)
downloadrockbox-5245c9254ae3d62ffd187ed66d443b1e58724b1e.tar.gz
rockbox-5245c9254ae3d62ffd187ed66d443b1e58724b1e.zip
Fix FS#11710. On Coldfire CPU's mpc uses a speed optimization which was not correctly re-initialized when rebuffering.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28437 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/codecs/libmusepack/mpc_demux.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/apps/codecs/libmusepack/mpc_demux.c b/apps/codecs/libmusepack/mpc_demux.c
index 42f6cecd21..e4ae0f89d3 100644
--- a/apps/codecs/libmusepack/mpc_demux.c
+++ b/apps/codecs/libmusepack/mpc_demux.c
@@ -101,6 +101,9 @@ mpc_demux_fill(mpc_demux * d, mpc_uint32_t min_bytes, int flags)
101 memmove(d->buffer + offset, d->bits_reader.buff, unread_bytes); 101 memmove(d->buffer + offset, d->bits_reader.buff, unread_bytes);
102 d->bits_reader.buff = d->buffer + offset; 102 d->bits_reader.buff = d->buffer + offset;
103 d->bytes_total = unread_bytes + offset; 103 d->bytes_total = unread_bytes + offset;
104 /* reset Coldfire optimized read when rebuffering */
105 d->bits_reader.buffered_addr = 0;
106 d->bits_reader.buffered_code = 0;
104 } 107 }
105 bytes2read = d->r->read(d->r, d->buffer + d->bytes_total, bytes2read); 108 bytes2read = d->r->read(d->r, d->buffer + d->bytes_total, bytes2read);
106 if (flags & MPC_BUFFER_SWAP){ 109 if (flags & MPC_BUFFER_SWAP){