diff src/share/vm/classfile/verifier.hpp @ 22893:695017a614d5

8075118: JVM stuck in infinite loop during verification Summary: keep a list of handlers to prevent the same handler from being scanned repeatedly. Reviewed-by: dlong, dholmes
author hseigel
date Thu, 19 Mar 2015 08:55:50 -0400
parents 4b26b980ec8d
children
line wrap: on
line diff
--- a/src/share/vm/classfile/verifier.hpp	Fri Mar 20 09:20:57 2015 -0700
+++ b/src/share/vm/classfile/verifier.hpp	Thu Mar 19 08:55:50 2015 -0400
@@ -305,9 +305,10 @@
     bool* this_uninit, constantPoolHandle cp, StackMapTable* stackmap_table,
     TRAPS);
 
-  // Used by ends_in_athrow() to push all handlers that contain bci onto
-  // the handler_stack, if the handler is not already on the stack.
+  // Used by ends_in_athrow() to push all handlers that contain bci onto the
+  // handler_stack, if the handler has not already been pushed on the stack.
   void push_handlers(ExceptionTable* exhandlers,
+                     GrowableArray<u4>* handler_list,
                      GrowableArray<u4>* handler_stack,
                      u4 bci);