summaryrefslogtreecommitdiff
path: root/apps/pcmbuf.c
diff options
context:
space:
mode:
authorSteve Bavin <pondlife@pondlife.me>2006-09-27 15:23:10 +0000
committerSteve Bavin <pondlife@pondlife.me>2006-09-27 15:23:10 +0000
commitd5dcb49f17d8fb2965cdae47f2dbf161e5ddc5a6 (patch)
treef7f00250a63850788020b5f03a1b9ad12bc539c6 /apps/pcmbuf.c
parentf80de70df3eb6d805002837efaa35a67b128dcab (diff)
downloadrockbox-d5dcb49f17d8fb2965cdae47f2dbf161e5ddc5a6.zip
rockbox-d5dcb49f17d8fb2965cdae47f2dbf161e5ddc5a6.tar.gz
rockbox-d5dcb49f17d8fb2965cdae47f2dbf161e5ddc5a6.tar.bz2
rockbox-d5dcb49f17d8fb2965cdae47f2dbf161e5ddc5a6.tar.xz
Fix for crossfade crashes if in or out delay are zero
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11078 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/pcmbuf.c')
-rw-r--r--apps/pcmbuf.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/apps/pcmbuf.c b/apps/pcmbuf.c
index ecc7e4f..b4d9bce 100644
--- a/apps/pcmbuf.c
+++ b/apps/pcmbuf.c
@@ -496,7 +496,7 @@ static void crossfade_process_buffer(size_t fade_in_delay,
/* Find the right chunk to start fading out */
fade_out_delay += crossfade_sample * 2;
- while (fade_out_delay >= fade_out_chunk->size)
+ while (fade_out_delay != 0 && fade_out_delay >= fade_out_chunk->size)
{
fade_out_delay -= fade_out_chunk->size;
fade_out_chunk = fade_out_chunk->link;
@@ -533,7 +533,7 @@ static void crossfade_process_buffer(size_t fade_in_delay,
/* Find the right chunk and sample to start fading in */
fade_in_delay += crossfade_sample * 2;
- while (fade_in_delay >= crossfade_chunk->size)
+ while (fade_in_delay != 0 && fade_in_delay >= crossfade_chunk->size)
{
fade_in_delay -= crossfade_chunk->size;
crossfade_chunk = crossfade_chunk->link;