diff options
Diffstat (limited to 'src/main/java/com/google')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/sandbox/SandboxRunner.java | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxRunner.java b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxRunner.java index efa423e320..08e855dad8 100644 --- a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxRunner.java +++ b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxRunner.java @@ -85,24 +85,28 @@ abstract class SandboxRunner { status = ((AbnormalTerminationException) e).getResult().getTerminationStatus(); timedOut = !status.exited() && (status.getTerminatingSignal() == getSignalOnTimeout()); } + String statusMessage = status + " [sandboxed]"; + if (!verboseFailures) { - // simplest error message + // Simplest possible error message. throw new UserExecException(statusMessage, e, timedOut); } - List<String> commandList; - if (!sandboxDebug) { - commandList = arguments; - } else { + + List<String> commandList = arguments; + if (sandboxDebug) { + // When using --sandbox_debug, show the entire command-line including the part where we call + // the sandbox helper binary. commandList = Arrays.asList(cmd.getCommandLineElements()); } + String commandFailureMessage = - CommandFailureUtils.describeCommandFailure( - true, - commandList, - environment, - null) - + (sandboxDebug ? "" : SANDBOX_DEBUG_SUGGESTION); + CommandFailureUtils.describeCommandFailure(true, commandList, environment, null); + + if (!sandboxDebug) { + commandFailureMessage += SANDBOX_DEBUG_SUGGESTION; + } + throw new UserExecException(commandFailureMessage, e, timedOut); } } |