Fix a possible off-by-one in the verifier.

Bug: http://code.google.com/p/android/issues/detail?id=10863
Change-Id: I604f9a5ea08b6a6934b3ba522e1fda0bb738f81c
diff --git a/vm/analysis/CodeVerify.cpp b/vm/analysis/CodeVerify.cpp
index 1149307..6016fd1 100644
--- a/vm/analysis/CodeVerify.cpp
+++ b/vm/analysis/CodeVerify.cpp
@@ -3797,7 +3797,7 @@
             if (instr == kPackedSwitchSignature ||
                 instr == kSparseSwitchSignature ||
                 instr == kArrayDataSignature ||
-                (instr == OP_NOP &&
+                (instr == OP_NOP && (insnIdx + 1 < insnsSize) &&
                  (meth->insns[insnIdx+1] == kPackedSwitchSignature ||
                   meth->insns[insnIdx+1] == kSparseSwitchSignature ||
                   meth->insns[insnIdx+1] == kArrayDataSignature)))