diff options
Diffstat (limited to 'runtime/instrumentation.cc')
| -rw-r--r-- | runtime/instrumentation.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/runtime/instrumentation.cc b/runtime/instrumentation.cc index 2c82cb1acd..49f202182d 100644 --- a/runtime/instrumentation.cc +++ b/runtime/instrumentation.cc @@ -137,11 +137,12 @@ static void UpdateEntrypoints(ArtMethod* method, const void* quick_code) method->SetEntryPointFromQuickCompiledCode(quick_code); } -bool Instrumentation::NeedDebugVersionFor(ArtMethod* method) const REQUIRES_SHARED(Locks::mutator_lock_) { - return Dbg::IsDebuggerActive() && - Runtime::Current()->IsJavaDebuggable() && +bool Instrumentation::NeedDebugVersionFor(ArtMethod* method) const + REQUIRES_SHARED(Locks::mutator_lock_) { + return Runtime::Current()->IsJavaDebuggable() && !method->IsNative() && - !method->IsProxyMethod(); + !method->IsProxyMethod() && + Runtime::Current()->GetRuntimeCallbacks()->IsMethodBeingInspected(method); } void Instrumentation::InstallStubsForMethod(ArtMethod* method) { |