diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/bazel/rules/android/AndroidSdkRepositoryFunction.java | 15 |
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) { |