summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2011-02-05 09:59:36 +0000
committerMichael Sevakis <jethead71@rockbox.org>2011-02-05 09:59:36 +0000
commit62fb090ac491a61c4100abc9ac62354dc38c0fc4 (patch)
tree02d3fa32c1dfc0267b4262c8c9b16e948daaf981
parent988b3083df91d88848ec637664e2d8b9ed26a489 (diff)
downloadrockbox-62fb090ac491a61c4100abc9ac62354dc38c0fc4.tar.gz
rockbox-62fb090ac491a61c4100abc9ac62354dc38c0fc4.zip
Fix #11897 - Multiple 'divide by zero' while playing particular APE on Clip+. Problem and solution observed and checked on Gigabeat S by myself. Fix submitted by Mikhail Titov resolves it. range_decode_short was declared as returing 'int short' rather than 'unsigned short' resulting in unwanted sign extension.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29208 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/codecs/demac/libdemac/entropy.c2
-rw-r--r--docs/CREDITS1
2 files changed, 2 insertions, 1 deletions
diff --git a/apps/codecs/demac/libdemac/entropy.c b/apps/codecs/demac/libdemac/entropy.c
index a09ba8f540..1cef979808 100644
--- a/apps/codecs/demac/libdemac/entropy.c
+++ b/apps/codecs/demac/libdemac/entropy.c
@@ -215,7 +215,7 @@ static inline unsigned char decode_byte(void)
return tmp;
}
-static inline int short range_decode_short(void)
+static inline unsigned short range_decode_short(void)
{ int tmp = range_decode_culshift(16);
range_decode_update( 1,tmp);
return tmp;
diff --git a/docs/CREDITS b/docs/CREDITS
index e6e5c7a937..9bbfc70d9b 100644
--- a/docs/CREDITS
+++ b/docs/CREDITS
@@ -583,6 +583,7 @@ Robert Horn
Ante Maretic
Benjamin Brown
Uwe Wiebach
+Mikhail Titov
The libmad team
The wavpack team