diff options
Diffstat (limited to 'openjdkjvmti/ti_extension.cc')
-rw-r--r-- | openjdkjvmti/ti_extension.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/openjdkjvmti/ti_extension.cc b/openjdkjvmti/ti_extension.cc index 02dc9f19c8..10ea43a1ee 100644 --- a/openjdkjvmti/ti_extension.cc +++ b/openjdkjvmti/ti_extension.cc @@ -398,7 +398,8 @@ jvmtiError ExtensionUtil::GetExtensionFunctions(jvmtiEnv* env, // These require index-ids and debuggable to function art::Runtime* runtime = art::Runtime::Current(); - if (runtime->GetJniIdType() == art::JniIdType::kIndices && IsFullJvmtiAvailable()) { + if (runtime->GetJniIdType() == art::JniIdType::kIndices && + (runtime->GetInstrumentation()->IsForcedInterpretOnly() || runtime->IsJavaDebuggable())) { // IsStructurallyModifiableClass error = add_extension( reinterpret_cast<jvmtiExtensionFunction>(Redefiner::IsStructurallyModifiableClass), @@ -702,7 +703,8 @@ jvmtiError ExtensionUtil::GetExtensionEvents(jvmtiEnv* env, return error; } art::Runtime* runtime = art::Runtime::Current(); - if (runtime->GetJniIdType() == art::JniIdType::kIndices && IsFullJvmtiAvailable()) { + if (runtime->GetJniIdType() == art::JniIdType::kIndices && + (runtime->GetInstrumentation()->IsForcedInterpretOnly() || runtime->IsJavaDebuggable())) { error = add_extension( ArtJvmtiEvent::kStructuralDexFileLoadHook, "com.android.art.class.structural_dex_file_load_hook", |