summaryrefslogtreecommitdiff
path: root/runtime/quick_exception_handler.cc
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2018-11-29 16:17:01 +0000
committerVladimir Marko <vmarko@google.com>2018-11-29 17:54:54 +0000
commit813a86307e1f3437ed9d17aeea2c5c6ffcda5c67 (patch)
tree6ab0118464a3f721dc967d52a9607a96ce6e4188 /runtime/quick_exception_handler.cc
parent7e09737125ddb8c6f243ac1882d2a23da3f109c4 (diff)
Use ArtMethod::GetDex{File,Cache}() more.
Do not go through the declaring class when it can cause a DexFile or DexCache mismatch for obsolete methods. Also fix similar potential mismatch in hiddenapi. This is a follow-up to https://android-review.googlesource.com/834082 , https://android-review.googlesource.com/836008 . Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Bug: 119830111 Change-Id: I3fdf1aa1bc7bab816d5d8034b107506a32438b77
Diffstat (limited to 'runtime/quick_exception_handler.cc')
-rw-r--r--runtime/quick_exception_handler.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/runtime/quick_exception_handler.cc b/runtime/quick_exception_handler.cc
index afdfefaffa..d23f3e8e11 100644
--- a/runtime/quick_exception_handler.cc
+++ b/runtime/quick_exception_handler.cc
@@ -238,7 +238,7 @@ void QuickExceptionHandler::FindCatch(ObjPtr<mirror::Throwable> exception) {
LOG(INFO) << "Handler is upcall";
}
if (handler_method_ != nullptr) {
- const DexFile* dex_file = handler_method_->GetDeclaringClass()->GetDexCache()->GetDexFile();
+ const DexFile* dex_file = handler_method_->GetDexFile();
int line_number = annotations::GetLineNumFromPC(dex_file, handler_method_, handler_dex_pc_);
LOG(INFO) << "Handler: " << handler_method_->PrettyMethod() << " (line: "
<< line_number << ")";