diff options
-rw-r--r-- | runtime/debugger.cc | 2 | ||||
-rw-r--r-- | runtime/jdwp/object_registry.cc | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/runtime/debugger.cc b/runtime/debugger.cc index 52a2141..2b82167 100644 --- a/runtime/debugger.cc +++ b/runtime/debugger.cc @@ -2712,7 +2712,7 @@ JDWP::JdwpError Dbg::InvokeMethod(JDWP::ObjectId thread_id, JDWP::ObjectId objec if (argument == ObjectRegistry::kInvalidObject) { return JDWP::ERR_INVALID_OBJECT; } - if (!argument->InstanceOf(parameter_type)) { + if (argument != NULL && !argument->InstanceOf(parameter_type)) { return JDWP::ERR_ILLEGAL_ARGUMENT; } diff --git a/runtime/jdwp/object_registry.cc b/runtime/jdwp/object_registry.cc index be2219c..7408e92 100644 --- a/runtime/jdwp/object_registry.cc +++ b/runtime/jdwp/object_registry.cc @@ -118,6 +118,9 @@ mirror::Object* ObjectRegistry::InternalGet(JDWP::ObjectId id) { } jobject ObjectRegistry::GetJObject(JDWP::ObjectId id) { + if (id == 0) { + return NULL; + } Thread* self = Thread::Current(); MutexLock mu(self, lock_); id_iterator it = id_to_entry_.find(id); |