diff options
author | Miika Pekkarinen <miipekk@ihme.org> | 2005-07-17 21:02:40 +0000 |
---|---|---|
committer | Miika Pekkarinen <miipekk@ihme.org> | 2005-07-17 21:02:40 +0000 |
commit | 2103cf4b74c25e7d199e28349e377c2edb9a7ec6 (patch) | |
tree | c2313f495be1914cfe7c7c6fce6706b10e470778 /firmware/pcm_playback.c | |
parent | e9919342c558bc6b1f843bbc6e900c5ef540ee8f (diff) | |
download | rockbox-2103cf4b74c25e7d199e28349e377c2edb9a7ec6.tar.gz rockbox-2103cf4b74c25e7d199e28349e377c2edb9a7ec6.zip |
Check that remaining bytes counter is not zero.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7183 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/pcm_playback.c')
-rw-r--r-- | firmware/pcm_playback.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/firmware/pcm_playback.c b/firmware/pcm_playback.c index fc7239bf86..da04795d80 100644 --- a/firmware/pcm_playback.c +++ b/firmware/pcm_playback.c | |||
@@ -101,7 +101,7 @@ static long calculate_channel_peak_average(int channel, unsigned short *addr, | |||
101 | addr = &addr[channel]; | 101 | addr = &addr[channel]; |
102 | average = 0; | 102 | average = 0; |
103 | 103 | ||
104 | if (pcm_playing && !pcm_paused && addr != NULL) | 104 | if (pcm_playing && !pcm_paused && addr != NULL && size) |
105 | { | 105 | { |
106 | /* Calculate the zero point and remove DC offset (should be around 32768) */ | 106 | /* Calculate the zero point and remove DC offset (should be around 32768) */ |
107 | zero_point = 0; | 107 | zero_point = 0; |
@@ -164,7 +164,7 @@ static long calculate_channel_peak_average(int channel, unsigned short *addr, | |||
164 | void pcm_calculate_peaks(int *left, int *right) | 164 | void pcm_calculate_peaks(int *left, int *right) |
165 | { | 165 | { |
166 | unsigned short *addr = (unsigned short *)SAR0; | 166 | unsigned short *addr = (unsigned short *)SAR0; |
167 | long size = MIN(512, BCR0); | 167 | long size = MIN(512, BCR0 / 2); |
168 | 168 | ||
169 | if (left != NULL) | 169 | if (left != NULL) |
170 | *left = calculate_channel_peak_average(0, addr, size); | 170 | *left = calculate_channel_peak_average(0, addr, size); |