summaryrefslogtreecommitdiff
path: root/firmware/target
diff options
context:
space:
mode:
authorRafaël Carré <rafael.carre@gmail.com>2011-12-13 22:13:15 +0000
committerRafaël Carré <rafael.carre@gmail.com>2011-12-13 22:13:15 +0000
commit1096cc08c03af37517a29b4e453002911a9ad82e (patch)
tree05b448571ae658d8e259a7d4fe6de6a4a57fbc4d /firmware/target
parenta60463e636d62015af48ca865359e6535e691a6f (diff)
downloadrockbox-1096cc08c03af37517a29b4e453002911a9ad82e.tar.gz
rockbox-1096cc08c03af37517a29b4e453002911a9ad82e.zip
usb-s3c6400: fix endpoint array traversal in interrupt handler
fix r31219 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31233 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target')
-rw-r--r--firmware/target/arm/usb-s3c6400x.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/firmware/target/arm/usb-s3c6400x.c b/firmware/target/arm/usb-s3c6400x.c
index 66699bac89..16cabb6ccf 100644
--- a/firmware/target/arm/usb-s3c6400x.c
+++ b/firmware/target/arm/usb-s3c6400x.c
@@ -166,8 +166,9 @@ static void usb_reset(void)
166static void handle_ep_int(int out) 166static void handle_ep_int(int out)
167{ 167{
168 static const uint8_t eps[2][3] = { /* IN */ {0, 1, 3}, /* OUT */ {0, 2, 4}}; 168 static const uint8_t eps[2][3] = { /* IN */ {0, 1, 3}, /* OUT */ {0, 2, 4}};
169 for (int i = 0, ep = eps[!!out][i]; i < 3; ep = eps[!!out][i]) 169 for (int i = 0; i < 3; i++)
170 { 170 {
171 int ep = eps[!!out][i];
171 uint32_t epints = DEPINT(ep, out); 172 uint32_t epints = DEPINT(ep, out);
172 if (!epints) 173 if (!epints)
173 continue; 174 continue;