From f37a7b004f25b86f4e99060bffa75d63c3e39c55 Mon Sep 17 00:00:00 2001 From: yellows8 Date: Wed, 27 Aug 2014 17:42:53 -0400 Subject: [PATCH] Added checks for the array index code in hid.c. --- libctru/source/services/hid.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libctru/source/services/hid.c b/libctru/source/services/hid.c index e67e60d..1265ec9 100644 --- a/libctru/source/services/hid.c +++ b/libctru/source/services/hid.c @@ -53,11 +53,13 @@ void hidScanInput() { kOld = kHeld; - int padId = hidSharedMem[4]; + u32 padId = hidSharedMem[4]; + if(padId>7)padId=7; kHeld = hidSharedMem[10 + padId*4]; cPos = *(circlePosition*)&hidSharedMem[10 + padId*4 + 3]; - int touchId = hidSharedMem[42 + 4]; + u32 touchId = hidSharedMem[42 + 4]; + if(touchId>7)touchId=7; tPos = *(touchPosition*)&hidSharedMem[42 + 8 + touchId*2]; if (hidSharedMem[42 + 8 + touchId*2 + 1]) kHeld |= KEY_TOUCH;