< prev index next >

src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/JavaVFrame.java

Print this page
@@ -75,10 +75,14 @@
    private String identifyLockState(MonitorInfo monitor, String waitingState) {
      Mark mark = new Mark(monitor.owner());
      if (mark.hasMonitor() &&
          ( // we have marked ourself as pending on this monitor
            mark.monitor().equals(thread.getCurrentPendingMonitor()) ||
+           // Owned anonymously means that we are not the owner of
+           // the monitor and must be waiting for the owner to
+           // exit it.
+           mark.monitor().isOwnedAnonymous() ||
            // we are not the owner of this monitor
            !mark.monitor().isEntered(thread)
          )) {
        return waitingState;
      }
< prev index next >