commit | e85e280645f579ffd5511a41553e95713c80177d | [log] [tgz] |
---|---|---|
author | kmb <kmb@google.com> | Tue Feb 06 13:43:30 2018 -0800 |
committer | Copybara-Service <copybara-piper@google.com> | Tue Feb 06 13:46:27 2018 -0800 |
tree | f234dbeb099d91e5831425e692bed6b8ca8ffe4f | |
parent | 4c6c41799bfe76057ad557de706cd8ca27eab65c [diff] |
drop debug info when loading classes in desugar as a workaround for https://bugs.openjdk.java.net/browse/JDK-8066981 RELNOTES: None. PiperOrigin-RevId: 184732576
diff --git a/src/test/java/com/google/devtools/build/android/desugar/b72690624_testdata.jar b/src/test/java/com/google/devtools/build/android/desugar/b72690624_testdata.jar new file mode 100644 index 0000000..6cca3a0 --- /dev/null +++ b/src/test/java/com/google/devtools/build/android/desugar/b72690624_testdata.jar Binary files differ
diff --git a/src/tools/android/java/com/google/devtools/build/android/desugar/HeaderClassLoader.java b/src/tools/android/java/com/google/devtools/build/android/desugar/HeaderClassLoader.java index 0a757bf..77d99bb 100644 --- a/src/tools/android/java/com/google/devtools/build/android/desugar/HeaderClassLoader.java +++ b/src/tools/android/java/com/google/devtools/build/android/desugar/HeaderClassLoader.java
@@ -58,7 +58,8 @@ // Have ASM compute maxs so we don't need to figure out how many formal parameters there are ClassWriter writer = new ClassWriter(ClassWriter.COMPUTE_MAXS); ImmutableList<FieldInfo> interfaceFieldNames = getFieldsIfReaderIsInterface(reader); - reader.accept(new CodeStubber(writer, interfaceFieldNames), 0); + // TODO(kmb): Consider SKIP_CODE and stubbing everything so class loader doesn't verify code + reader.accept(new CodeStubber(writer, interfaceFieldNames), ClassReader.SKIP_DEBUG); bytecode = writer.toByteArray(); } catch (IOException e) { throw new IOError(e);