aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java
index 866e45e20a..9f07c98285 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java
@@ -114,18 +114,15 @@ public final class ExtraAction extends SpawnAction {
@Nullable
@Override
- public Iterable<Artifact> discoverInputs(ActionExecutionContext actionExecutionContext)
+ public synchronized Iterable<Artifact> discoverInputs(
+ ActionExecutionContext actionExecutionContext)
throws ActionExecutionException, InterruptedException {
Preconditions.checkState(discoversInputs(), this);
// We need to update our inputs to take account of any additional
// inputs the shadowed action may need to do its work.
- if (shadowedAction.discoversInputs() && shadowedAction instanceof AbstractAction) {
- Iterable<Artifact> additionalInputs =
- ((AbstractAction) shadowedAction).getInputFilesForExtraAction(actionExecutionContext);
- updateInputs(createInputs(additionalInputs, extraActionInputs, runfilesSupplier));
- return ImmutableSet.copyOf(additionalInputs);
- }
- return null;
+ Iterable<Artifact> additionalInputs = shadowedAction.discoverInputs(actionExecutionContext);
+ updateInputs(createInputs(additionalInputs, extraActionInputs, runfilesSupplier));
+ return additionalInputs;
}
@Override