diff options
author | Victor Chang <vichang@google.com> | 2018-06-06 16:19:35 +0100 |
---|---|---|
committer | Victor Chang <vichang@google.com> | 2018-06-06 18:05:38 +0100 |
commit | 95c6d9f21cf21fc9aa4026f8290a7dc6303e19a8 (patch) | |
tree | e9de4dc8a6ad222aa22913cd5aeb92ba10547b83 /annotations/generate_annotated_java_files.py | |
parent | 2da066ba4822d9426e0af11a89f1dce2c86309fc (diff) |
Fix racy static initializers in FileDescriptor and UnixChannelFactory
- We forgot to update SharedSecrets from upstreaam to initialize
javaIOFileDescriptorAccess, or we didn't have a proper way to
replace the method Unsafe.ensureClassInitialized.
- Upstream ensures that the field javaIOFileDescriptorAccess is not null
by calling Unsafe.ensureClassInitialized(FileDescriptor.class).
But Unsafe.ensureClassInitialized isn't supported in Android. Use
Class.forName to initialize the FileDescriptor class.
Bug: 80495283
Test: Cherrypicked this CL onto the branch where the problem was occurring.
"./test/testrunner/testrunner.py --host -b --t 071-dexfile-map-clean --64"
The test fails before the change and is passing now.
Test: cts-tradefed run cts-dev -m CtsLibcoreTestCases -t libcore.sun.misc.SharedSecretsTest
Change-Id: I77aec40f9a82416666b3c57fdde7c642aa0f419e
Diffstat (limited to 'annotations/generate_annotated_java_files.py')
0 files changed, 0 insertions, 0 deletions