diff -r c2974244a496 -r aa289b22b577 hotspot/src/share/vm/runtime/deoptimization.cpp --- a/hotspot/src/share/vm/runtime/deoptimization.cpp Fri Jun 05 10:25:39 2009 -0700 +++ b/hotspot/src/share/vm/runtime/deoptimization.cpp Tue Jun 09 16:19:10 2009 -0700 @@ -933,7 +933,7 @@ GrowableArray* monitors = cvf->monitors(); for (int i = 0; i < monitors->length(); i++) { MonitorInfo* mon_info = monitors->at(i); - if (mon_info->owner() != NULL && !mon_info->eliminated()) { + if (!mon_info->eliminated() && mon_info->owner() != NULL) { objects_to_revoke->append(Handle(mon_info->owner())); } }