aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
diff options
context:
space:
mode:
authorGravatar felly <felly@google.com>2018-07-27 09:35:38 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-07-27 09:37:15 -0700
commit292db1efdff05800b573e358469c942c999ca671 (patch)
tree3e58605f38fb0cf3f9d8746d50dbf11b24c3f5b1 /src/main
parenta5aafd52369115ad8e479681728ec689ca3162ca (diff)
Simplify tree artifact directory check, and avoid an extra system call.
RELNOTES: None PiperOrigin-RevId: 206328416
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/ActionMetadataHandler.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ActionMetadataHandler.java b/src/main/java/com/google/devtools/build/lib/skyframe/ActionMetadataHandler.java
index 0efed68fba..8bf3b15ac5 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ActionMetadataHandler.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ActionMetadataHandler.java
@@ -431,8 +431,9 @@ public class ActionMetadataHandler implements MetadataHandler {
throws IOException {
Preconditions.checkState(artifact.isTreeArtifact(), artifact);
- if (!artifactPathResolver.toPath(artifact).isDirectory()
- || artifactPathResolver.toPath(artifact).isSymbolicLink()) {
+ // Make sure the tree artifact root is a regular directory. Note that this is how the Action
+ // is initialized, so this should hold unless the Action itself has deleted the root.
+ if (!artifactPathResolver.toPath(artifact).isDirectory(Symlinks.NOFOLLOW)) {
return TreeArtifactValue.MISSING_TREE_ARTIFACT;
}