Add a helpful error message before a potential NPE.

RELNOTES: None
PiperOrigin-RevId: 250581763
diff --git a/src/tools/android/java/com/google/devtools/build/android/aapt2/ResourceCompiler.java b/src/tools/android/java/com/google/devtools/build/android/aapt2/ResourceCompiler.java
index 85e9826..4b451a2 100644
--- a/src/tools/android/java/com/google/devtools/build/android/aapt2/ResourceCompiler.java
+++ b/src/tools/android/java/com/google/devtools/build/android/aapt2/ResourceCompiler.java
@@ -144,17 +144,23 @@
     public List<Path> call() throws Exception {
       final String directoryName = file.getParent().getFileName().toString();
       final Qualifiers qualifiers = Qualifiers.parseFrom(directoryName);
-      final String filename = interpolateAapt2Filename(qualifiers, file.getFileName().toString());
+      final ResourceFolderType resourceFolderType = qualifiers.asFolderType();
+      if (resourceFolderType == null) {
+        throw new CompileError(
+            new IllegalArgumentException("Unexpected resource folder for file: " + file));
+      }
 
+      final String filename =
+          interpolateAapt2Filename(resourceFolderType, file.getFileName().toString());
       final List<Path> results = new ArrayList<>();
-      if (qualifiers.asFolderType().equals(ResourceFolderType.VALUES)
-          || (qualifiers.asFolderType().equals(ResourceFolderType.RAW)
+      if (resourceFolderType.equals(ResourceFolderType.VALUES)
+          || (resourceFolderType.equals(ResourceFolderType.RAW)
               && file.getFileName().toString().endsWith(".xml"))) {
         extractAttributes(directoryName, filename, results);
       }
 
       if (qualifiers.containDefaultLocale()
-          && qualifiers.asFolderType().equals(ResourceFolderType.VALUES)) {
+          && resourceFolderType.equals(ResourceFolderType.VALUES)) {
         compile(
             directoryName,
             filename,
@@ -171,9 +177,9 @@
       return results;
     }
 
-    static String interpolateAapt2Filename(Qualifiers qualifiers, String filename) {
+    static String interpolateAapt2Filename(ResourceFolderType resourceFolderType, String filename) {
       // res/<not values>/foo.bar -> foo.bar
-      if (!qualifiers.asFolderType().equals(ResourceFolderType.VALUES)) {
+      if (!resourceFolderType.equals(ResourceFolderType.VALUES)) {
         return filename;
       }