Fix ClassCastException running R8

Fixes: b/310939676
Change-Id: Ib68e2335f143e64fd762d5a9535c4bcfd44dd679
diff --git a/src/main/java/com/android/tools/r8/R8.java b/src/main/java/com/android/tools/r8/R8.java
index e452427..65a88a9 100644
--- a/src/main/java/com/android/tools/r8/R8.java
+++ b/src/main/java/com/android/tools/r8/R8.java
@@ -727,10 +727,10 @@
       timing.end();
 
       // Perform repackaging.
-      if (options.isRepackagingEnabled()) {
-        new Repackaging(appView.withLiveness()).run(executorService, timing);
-      }
       if (appView.hasLiveness()) {
+        if (options.isRepackagingEnabled()) {
+          new Repackaging(appView.withLiveness()).run(executorService, timing);
+        }
         assert Repackaging.verifyIdentityRepackaging(appView.withLiveness(), executorService);
       }
 
diff --git a/src/test/java/com/android/tools/r8/repackage/RepackageWithoutAnyOptimizationTest.java b/src/test/java/com/android/tools/r8/repackage/RepackageWithoutAnyOptimizationTest.java
index 2dbc058..4d9ce90 100644
--- a/src/test/java/com/android/tools/r8/repackage/RepackageWithoutAnyOptimizationTest.java
+++ b/src/test/java/com/android/tools/r8/repackage/RepackageWithoutAnyOptimizationTest.java
@@ -3,10 +3,7 @@
 // BSD-style license that can be found in the LICENSE file.
 package com.android.tools.r8.repackage;
 
-import static org.junit.Assert.assertThrows;
-import static org.junit.Assert.assertTrue;
 
-import com.android.tools.r8.CompilationFailedException;
 import com.android.tools.r8.TestBase;
 import com.android.tools.r8.TestParameters;
 import com.android.tools.r8.TestParametersCollection;
@@ -28,20 +25,15 @@
 
   @Test
   public void testR8() throws Exception {
-    Throwable t =
-        assertThrows(
-            CompilationFailedException.class,
-            () ->
-                testForR8(parameters.getBackend())
-                    .addInnerClasses(getClass())
-                    .setMinApi(parameters.getApiLevel())
-                    .addKeepMainRule(TestClass.class)
-                    .addDontOptimize()
-                    .addDontObfuscate()
-                    .addDontShrink()
-                    .addKeepRules("-repackageclasses")
-                    .compile());
-    assertTrue(t.getCause() instanceof ClassCastException);
+    testForR8(parameters.getBackend())
+        .addInnerClasses(getClass())
+        .setMinApi(parameters.getApiLevel())
+        .addKeepMainRule(TestClass.class)
+        .addDontOptimize()
+        .addDontObfuscate()
+        .addDontShrink()
+        .addKeepRules("-repackageclasses")
+        .compile();
   }
 
   static class TestClass {