diff agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java @ 11996:22a5aff0df0b

8019396: SA-JDI OSThread class initialization throws an exception Summary: Method sun.jvm.hotspot.runtime.OSThread.initialize throws a sun.jvm.hotspot.types.WrongTypeException Reviewed-by: dholmes, mgerdin
author dsamersoff
date Tue, 06 Aug 2013 14:28:48 +0400
parents 43badbe2717a
children
line wrap: on
line diff
--- a/agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java	Mon Aug 05 08:55:06 2013 -0700
+++ b/agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java	Tue Aug 06 14:28:48 2013 +0400
@@ -32,7 +32,7 @@
 // to the sys_thread_t structure of the classic JVM implementation.
 public class OSThread extends VMObject {
     private static JIntField interruptedField;
-    private static JIntField threadIdField;
+    private static Field threadIdField;
     static {
         VM.registerVMInitializedObserver(new Observer() {
             public void update(Observable o, Object data) {
@@ -44,7 +44,7 @@
     private static synchronized void initialize(TypeDataBase db) {
         Type type = db.lookupType("OSThread");
         interruptedField = type.getJIntField("_interrupted");
-        threadIdField = type.getJIntField("_thread_id");
+        threadIdField = type.getField("_thread_id");
     }
 
     public OSThread(Address addr) {
@@ -56,7 +56,7 @@
     }
 
     public int threadId() {
-        return (int)threadIdField.getValue(addr);
+        return threadIdField.getJInt(addr);
     }
 
 }