src/hotspot/share/runtime/frame.cpp
changeset 54150 5529640c5f67
parent 53547 9d1a788dea3d
child 54347 235883996bc7
--- a/src/hotspot/share/runtime/frame.cpp	Fri Mar 15 18:59:21 2019 +0100
+++ b/src/hotspot/share/runtime/frame.cpp	Fri Mar 15 16:00:18 2019 -0400
@@ -1115,13 +1115,13 @@
 }
 
 
-// call f() on the interpreted Method*s in the stack.
-// Have to walk the entire code cache for the compiled frames Yuck.
-void frame::metadata_do(void f(Metadata*)) {
+// Call f closure on the interpreted Method*s in the stack.
+void frame::metadata_do(MetadataClosure* f) {
+  ResourceMark rm;
   if (is_interpreted_frame()) {
     Method* m = this->interpreter_frame_method();
     assert(m != NULL, "expecting a method in this frame");
-    f(m);
+    f->do_metadata(m);
   }
 }