summaryrefslogtreecommitdiff
path: root/runtime/entrypoints/entrypoint_utils-inl.h
diff options
context:
space:
mode:
author Alex Light <allight@google.com> 2019-10-07 13:51:13 +0000
committer Treehugger Robot <treehugger-gerrit@google.com> 2019-10-07 18:59:55 +0000
commit55eccdf61f46bd2a633f489f8d09cf78e1de1938 (patch)
treee60d91c8fc48dfe70956ec9febd346b9dc9fcf77 /runtime/entrypoints/entrypoint_utils-inl.h
parent49df715faf3700e874fbe246b339a8e426549216 (diff)
Revert^4 "Walk internal ArtField/ArtMethod pointers"
Several of the new tests make use of the invoke-custom opcode. This opcode is not supported by dexter/slicer causing the tests to fail. This reverts commit c34eab45161c51bf63e548e44645cbcc59d01268. Reason for revert: Added tests to redefine-stress known failures Test: ./test.py --host --redefine-stress Bug: 134162467 Change-Id: Ic1b375a0cb1e44d0252c17115af92c269fb8efc5
Diffstat (limited to 'runtime/entrypoints/entrypoint_utils-inl.h')
-rw-r--r--runtime/entrypoints/entrypoint_utils-inl.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/runtime/entrypoints/entrypoint_utils-inl.h b/runtime/entrypoints/entrypoint_utils-inl.h
index 255607937e..fe12a7c379 100644
--- a/runtime/entrypoints/entrypoint_utils-inl.h
+++ b/runtime/entrypoints/entrypoint_utils-inl.h
@@ -39,6 +39,7 @@
#include "mirror/object-inl.h"
#include "mirror/throwable.h"
#include "nth_caller_visitor.h"
+#include "reflective_handle_scope-inl.h"
#include "runtime.h"
#include "stack_map.h"
#include "thread.h"
@@ -381,9 +382,11 @@ inline ArtField* FindFieldFromCode(uint32_t field_idx,
return resolved_field;
} else {
StackHandleScope<1> hs(self);
+ StackArtFieldHandleScope<1> rhs(self);
+ ReflectiveHandle<ArtField> resolved_field_handle(rhs.NewHandle(resolved_field));
if (LIKELY(class_linker->EnsureInitialized(self, hs.NewHandle(fields_class), true, true))) {
// Otherwise let's ensure the class is initialized before resolving the field.
- return resolved_field;
+ return resolved_field_handle.Get();
}
DCHECK(self->IsExceptionPending()); // Throw exception and unwind
return nullptr; // Failure.