From 2ae3f2118c523c5e3865bcfb716348d933225a00 Mon Sep 17 00:00:00 2001 From: Robert Greene Date: Sat, 14 Dec 2002 05:38:21 +0000 Subject: [PATCH] Added a little bit of range checking. --- src/com/webcodepro/applecommander/storage/AppleUtil.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/com/webcodepro/applecommander/storage/AppleUtil.java b/src/com/webcodepro/applecommander/storage/AppleUtil.java index dbb8f71..61a81a0 100644 --- a/src/com/webcodepro/applecommander/storage/AppleUtil.java +++ b/src/com/webcodepro/applecommander/storage/AppleUtil.java @@ -39,6 +39,9 @@ public class AppleUtil { * A word is two bytes, in standard Apple LO/HI format. */ public static int getWordValue(byte[] buffer, int offset) { + if (offset+1 > buffer.length) { + return 0; + } return getWordValue(buffer[offset], buffer[offset+1]); } /** @@ -62,6 +65,9 @@ public class AppleUtil { * Stored in standard Apple LO/HI format. */ public static int get3ByteValue(byte[] buffer, int offset) { + if (offset+2 > buffer.length) { + return 0; + } return getUnsignedByte(buffer[offset]) + getUnsignedByte(buffer[offset+1])*256 + getUnsignedByte(buffer[offset+2])*65536;