6870851: Bad frame_chop in StackMapTable crashes JVM
authorkamg
Fri, 03 Sep 2010 14:47:05 -0400
changeset 6439 a9c5a6738be7
parent 6438 ace4f8100e90
child 6440 f2a0cdc024ba
6870851: Bad frame_chop in StackMapTable crashes JVM Summary: Must check locals for null when processing chop frame Reviewed-by: dholmes, dcubed
hotspot/src/share/vm/classfile/stackMapTable.cpp
--- a/hotspot/src/share/vm/classfile/stackMapTable.cpp	Tue Aug 31 03:14:00 2010 -0700
+++ b/hotspot/src/share/vm/classfile/stackMapTable.cpp	Fri Sep 03 14:47:05 2010 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -152,6 +152,7 @@
 
 int32_t StackMapReader::chop(
     VerificationType* locals, int32_t length, int32_t chops) {
+  if (locals == NULL) return -1;
   int32_t pos = length - 1;
   for (int32_t i=0; i<chops; i++) {
     if (locals[pos].is_category2_2nd()) {