< prev index next >
src/hotspot/share/runtime/deoptimization.cpp
Print this page
@@ -1317,11 +1317,11 @@
static void collect_monitors(compiledVFrame* cvf, GrowableArray<Handle>* objects_to_revoke) {
GrowableArray<MonitorInfo*>* monitors = cvf->monitors();
Thread* thread = Thread::current();
for (int i = 0; i < monitors->length(); i++) {
MonitorInfo* mon_info = monitors->at(i);
- if (!mon_info->eliminated() && mon_info->owner() != NULL) {
+ if (!mon_info->eliminated() && mon_info->owner() != NULL && !mon_info->owner()->is_value()) {
objects_to_revoke->append(Handle(thread, mon_info->owner()));
}
}
}
< prev index next >