diff options
author | 2024-09-19 13:03:28 +0100 | |
---|---|---|
committer | 2024-09-23 09:21:07 +0000 | |
commit | 56d62450fcd69434b94158a42f1a195bd7ee858b (patch) | |
tree | e629e304607c1f3cc185f5b7328872b06ad466e6 /runtime/class_linker_test.cc | |
parent | e5d19588b1b3163193f867e7ddb6cd6d19658841 (diff) |
Store reference to the target class in MH object.
Previously MH object only stored pointer to ArtField / ArtMethod
and GC could unload target class.
Bug: 366474683
Test: ./art/test/testrunner/testrunner.py --host --64 -b
Test: ./art/test/testrunner/testrunner.py --host --64 --jvm -b -t 2281-method
Test: ./art/test.py --host -g
Change-Id: I6e91fc59da7c55c15ed55fadaf796050eebb0f5e
Diffstat (limited to 'runtime/class_linker_test.cc')
-rw-r--r-- | runtime/class_linker_test.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/runtime/class_linker_test.cc b/runtime/class_linker_test.cc index 18f4b297ac..9c4e0289ae 100644 --- a/runtime/class_linker_test.cc +++ b/runtime/class_linker_test.cc @@ -778,7 +778,8 @@ struct MethodHandleOffsets : public CheckOffsets<mirror::MethodHandle> { struct MethodHandleImplOffsets : public CheckOffsets<mirror::MethodHandleImpl> { MethodHandleImplOffsets() : CheckOffsets<mirror::MethodHandleImpl>( false, "Ljava/lang/invoke/MethodHandleImpl;") { - addOffset(OFFSETOF_MEMBER(mirror::MethodHandleImpl, info_), "info"); + addOffset(OFFSETOF_MEMBER(mirror::MethodHandleImpl, target_class_or_info_), + "targetClassOrMethodHandleInfo"); } }; |