diff options
author | kseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-23 06:40:49 +0000 |
---|---|---|
committer | kseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-01-23 06:40:49 +0000 |
commit | a7761c5721cf67c942d5b8b4899911627478730c (patch) | |
tree | 51eb5d9c837a53959da01297b3d87af2194ee542 /libjava/gnu | |
parent | f5e8dfe885cf0ce5adcc395ddf3def9c8b76ce15 (diff) | |
download | gcc-a7761c5721cf67c942d5b8b4899911627478730c.tar.gz |
* gnu/classpath/jdwp/natVMVirtualMachine.cc
(getClassMethod): Implement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121078 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/gnu')
-rw-r--r-- | libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc b/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc index 8c599fb2e68..84b75ec386c 100644 --- a/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc +++ b/libjava/gnu/classpath/jdwp/natVMVirtualMachine.cc @@ -30,6 +30,7 @@ details. */ #include <gnu/classpath/jdwp/VMVirtualMachine.h> #include <gnu/classpath/jdwp/event/EventRequest.h> #include <gnu/classpath/jdwp/event/VmInitEvent.h> +#include <gnu/classpath/jdwp/exception/InvalidMethodException.h> #include <gnu/classpath/jdwp/exception/JdwpInternalErrorException.h> #include <gnu/classpath/jdwp/util/MethodResult.h> @@ -307,9 +308,14 @@ getAllClassMethods (MAYBE_UNUSED jclass klass) gnu::classpath::jdwp::VMMethod * gnu::classpath::jdwp::VMVirtualMachine:: -getClassMethod (MAYBE_UNUSED jclass klass, MAYBE_UNUSED jlong id) +getClassMethod (jclass klass, jlong id) { - return NULL; + jmethodID method = reinterpret_cast<jmethodID> (id); + _Jv_MethodBase *bmeth = _Jv_FindInterpreterMethod (klass, method); + if (bmeth != NULL) + return new gnu::classpath::jdwp::VMMethod (klass, id); + + throw new gnu::classpath::jdwp::exception::InvalidMethodException (id); } java::util::ArrayList * |