commit | 2d58dfa72f6a6e4052371cb4a88279e6187b5184 | [log] [tgz] |
---|---|---|
author | Colin Cross <ccross@android.com> | Mon May 28 15:00:07 2018 +0000 |
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | Mon May 28 15:00:07 2018 +0000 |
tree | b7c9e2ad9533451a28a42368c608022d7e824405 | |
parent | 6dac2a8e97f79ce29306913dedf7ed8573296515 [diff] | |
parent | ea1bd5eda69a52a8b20423b203bd33571ae5fc10 [diff] |
Merge "Treat -dontobfuscate as -keepattributes * in Proguard compatibilty mode"
diff --git a/src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java b/src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java index dd82dfd..d4d4bcb 100644 --- a/src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java +++ b/src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java
@@ -305,8 +305,8 @@ // disableOptimization(); } - if ((keepAttributePatterns.isEmpty() - && (rulesWasEmpty || (forceProguardCompatibility && !isObfuscating()))) + if ((keepAttributePatterns.isEmpty() && rulesWasEmpty) + || (forceProguardCompatibility && !isObfuscating()) || !isShrinking()) { keepAttributePatterns.addAll(ProguardKeepAttributes.KEEP_ALL); }
diff --git a/src/test/java/com/android/tools/r8/shaking/forceproguardcompatibility/ForceProguardCompatibilityTest.java b/src/test/java/com/android/tools/r8/shaking/forceproguardcompatibility/ForceProguardCompatibilityTest.java index 91fc9d4..642045c 100644 --- a/src/test/java/com/android/tools/r8/shaking/forceproguardcompatibility/ForceProguardCompatibilityTest.java +++ b/src/test/java/com/android/tools/r8/shaking/forceproguardcompatibility/ForceProguardCompatibilityTest.java
@@ -110,7 +110,7 @@ // The test contains only a member class so the enclosing-method attribute will be null. assertEquals( - !keepAnnotations && forceProguardCompatibility, + forceProguardCompatibility, !clazz.getDexClass().getInnerClasses().isEmpty()); assertEquals(forceProguardCompatibility || keepAnnotations, clazz.annotation(annotationClass.getCanonicalName()).isPresent());