aboutsummaryrefslogtreecommitdiff
path: root/java/src/com/google/typography/font/sfntly/data/ReadableFontData.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/com/google/typography/font/sfntly/data/ReadableFontData.java')
-rw-r--r--java/src/com/google/typography/font/sfntly/data/ReadableFontData.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/java/src/com/google/typography/font/sfntly/data/ReadableFontData.java b/java/src/com/google/typography/font/sfntly/data/ReadableFontData.java
index 2561703..ad7894c 100644
--- a/java/src/com/google/typography/font/sfntly/data/ReadableFontData.java
+++ b/java/src/com/google/typography/font/sfntly/data/ReadableFontData.java
@@ -150,7 +150,8 @@ public class ReadableFontData extends FontData {
*/
@Override
public ReadableFontData slice(int offset, int length) {
- if (offset < 0 || (offset + length) > this.size()) {
+ if (offset < 0 || length < 0 || offset > Integer.MAX_VALUE - length ||
+ (offset + length) > this.size()) {
throw new IndexOutOfBoundsException("Attempt to bind data outside of its limits.");
}
ReadableFontData slice = new ReadableFontData(this, offset, length);