aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryFunction.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryFunction.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryFunction.java
index 598784a368..0c98f90ab5 100644
--- a/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryFunction.java
@@ -391,14 +391,25 @@ public class AndroidSdkRepositoryFunction extends RepositoryFunction {
return pathFragments.build();
}
- /** Gets DirectoryListingValues for subdirectories of the directory or returns null. */
+ /**
+ * Gets DirectoryListingValues for subdirectories of the directory or returns null.
+ *
+ * Ignores all non-directory files.
+ */
private static ImmutableMap<PathFragment, DirectoryListingValue> getSubdirectoryListingValues(
final Path root, final PathFragment path, DirectoryListingValue directory, Environment env)
throws RepositoryFunctionException, InterruptedException {
Map<PathFragment, SkyKey> skyKeysForSubdirectoryLookups =
Maps.transformEntries(
Maps.uniqueIndex(
- directory.getDirents(),
+ Iterables.filter(
+ directory.getDirents(),
+ new Predicate<Dirent>() {
+ @Override
+ public boolean apply(Dirent dirent) {
+ return dirent.getType().equals(Dirent.Type.DIRECTORY);
+ }
+ }),
new Function<Dirent, PathFragment>() {
@Override
public PathFragment apply(Dirent input) {