Merge commit '98a1a6e766a0e2ab49e158a8019197dcb13e3670' into dev-release
diff --git a/src/main/java/com/android/tools/r8/dex/DexParser.java b/src/main/java/com/android/tools/r8/dex/DexParser.java
index a6eb1c3..2e37abb 100644
--- a/src/main/java/com/android/tools/r8/dex/DexParser.java
+++ b/src/main/java/com/android/tools/r8/dex/DexParser.java
@@ -833,6 +833,19 @@
       int unused = dexReader.getUshort();
       int size = dexReader.getUint();
       int offset = dexReader.getUint();
+      if (offset + size > dexReader.end()) {
+        throw new CompilationError(
+            "The dex file had an offset + size that pointed past the end of the dex file."
+                + "\nSection type: "
+                + DexSection.typeName(type)
+                + "\nSection offset: "
+                + offset
+                + "\nSection size: "
+                + size
+                + "\nFile size: "
+                + dexReader.end(),
+            origin);
+      }
       result[i] = new DexSection(type, unused, size, offset);
     }
     if (Log.ENABLED) {
diff --git a/tools/internal_test.py b/tools/internal_test.py
index b98be86..d8e8c62 100755
--- a/tools/internal_test.py
+++ b/tools/internal_test.py
@@ -70,7 +70,7 @@
         'find-xmx-min': 256,
         'find-xmx-max': 450,
         'find-xmx-range': 16,
-        'oom-threshold': 335,
+        'oom-threshold': 340,
     },
     {
         'app': 'youtube',