aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
diff options
context:
space:
mode:
authorGravatar shahan <shahan@google.com>2018-06-26 11:24:59 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-26 11:27:44 -0700
commitef6f4cff9ee3e0c92b61f59ca0585f63ff17e9a4 (patch)
tree18edd2f65766e2f61f0fe38d4b44497ced83dd09 /src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
parent89dfee5221180aa49b559f22eb6d5bf6bc14c769 (diff)
Instead of depending on mutable inputs of upstream CppCompileAction instances,
CppCompileAction.discoverInputsStage2 retrieves values of discovered modules from ActionExecutionValue. This addresses a possible a correctness issue. PiperOrigin-RevId: 202162180
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
index a415e4859f..a42fc65807 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
@@ -79,6 +79,7 @@ import com.google.devtools.build.lib.events.Reporter;
import com.google.devtools.build.lib.profiler.Profiler;
import com.google.devtools.build.lib.profiler.ProfilerTask;
import com.google.devtools.build.lib.profiler.SilentCloseable;
+import com.google.devtools.build.lib.rules.cpp.IncludeScannable;
import com.google.devtools.build.lib.util.Pair;
import com.google.devtools.build.lib.util.io.FileOutErr;
import com.google.devtools.build.lib.util.io.OutErr;
@@ -773,6 +774,9 @@ public final class SkyframeActionExecutor {
metadataHandler.getOutputTreeArtifactData(),
metadataHandler.getAdditionalOutputData(),
actionExecutionContext.getOutputSymlinks(),
+ (action instanceof IncludeScannable)
+ ? ((IncludeScannable) action).getDiscoveredModules()
+ : null,
action instanceof NotifyOnActionCacheHit);
}
}