OSDN Git Service

* prims.cc (_Jv_RunMain): Send JVMTI event notifications
authorkseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Jan 2007 22:44:08 +0000 (22:44 +0000)
committerkseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Jan 2007 22:44:08 +0000 (22:44 +0000)
        for VM_INIT and VM_DEATH instead of the JDWP notifications.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121143 138bc75d-0d04-0410-961f-82ee72b054a4

libjava/ChangeLog
libjava/prims.cc

index a69d1da..6b6749d 100644 (file)
@@ -1,5 +1,10 @@
 2007-01-24  Keith Seitz  <keiths@redhat.com>
 
+       * prims.cc (_Jv_RunMain): Send JVMTI event notifications
+       for VM_INIT and VM_DEATH instead of the JDWP notifications.
+
+2007-01-24  Keith Seitz  <keiths@redhat.com>
+
        * gnu/classpath/jdwp/natVMVirtualMachine.cc
        (getAllClassMethods): Implement.
 
index 00d5470..e205dbb 100644 (file)
@@ -32,6 +32,9 @@ details.  */
 #include <java/lang/ThreadGroup.h>
 #endif
 
+#include <jvmti.h>
+#include "jvmti-int.h"
+
 #ifndef DISABLE_GETENV_PROPERTIES
 #include <ctype.h>
 #include <java-props.h>
@@ -66,8 +69,6 @@ details.  */
 #include <execution.h>
 #include <gnu/classpath/jdwp/Jdwp.h>
 #include <gnu/classpath/jdwp/VMVirtualMachine.h>
-#include <gnu/classpath/jdwp/event/VmDeathEvent.h>
-#include <gnu/classpath/jdwp/event/VmInitEvent.h>
 #include <gnu/java/lang/MainThread.h>
 
 #ifdef USE_LTDL
@@ -1583,10 +1584,9 @@ _Jv_RunMain (JvVMInitArgs *vm_args, jclass klass, const char *name, int argc,
          jdwp->join ();
        }
 
-      // Send VmInit
-      gnu::classpath::jdwp::event::VmInitEvent *event;
-      event = new gnu::classpath::jdwp::event::VmInitEvent (main_thread);
-      gnu::classpath::jdwp::Jdwp::notify (event);
+      // Send VMInit
+      if (JVMTI_REQUESTED_EVENT (VMInit))
+       _Jv_JVMTI_PostEvent (JVMTI_EVENT_VM_INIT, main_thread);
     }
   catch (java::lang::Throwable *t)
     {
@@ -1601,12 +1601,12 @@ _Jv_RunMain (JvVMInitArgs *vm_args, jclass klass, const char *name, int argc,
 
   _Jv_ThreadRun (main_thread);
 
-  // Notify debugger of VM's death
-  if (gnu::classpath::jdwp::Jdwp::isDebugging)
+  // Send VMDeath
+  if (JVMTI_REQUESTED_EVENT (VMDeath))
     {
-      using namespace gnu::classpath::jdwp;
-      event::VmDeathEvent *event = new event::VmDeathEvent ();
-      Jdwp::notify (event);
+      java::lang::Thread *thread = java::lang::Thread::currentThread ();
+      JNIEnv *jni_env = _Jv_GetCurrentJNIEnv ();
+      _Jv_JVMTI_PostEvent (JVMTI_EVENT_VM_DEATH, thread, jni_env);
     }
 
   // If we got here then something went wrong, as MainThread is not